Visual studio 如何在SVN更新后自动执行Visual Studio任务?

Visual studio 如何在SVN更新后自动执行Visual Studio任务?,visual-studio,visual-studio-2008,svn,tortoisesvn,visualsvn,Visual Studio,Visual Studio 2008,Svn,Tortoisesvn,Visualsvn,我有几个VisualStudioWeb应用程序项目,其中包括SVN外部。当一个新文件被添加到外部模块时,VisualSVN会将其下载到文件系统中,但不会将其添加到VisualStudio项目中;它必须手动添加 我可能会编写一个宏来自动化此过程,我想知道是否可以通过以下任一方法使其成为一个单步过程: 让宏启动VisualSVN更新,然后执行该工作(问:是否可以从宏触发VisualSVN更新?) 从VisualSVN连接到一个假想的“更新后”事件,触发一个宏来完成工作(问:是否存在这样的事件?) 我

我有几个VisualStudioWeb应用程序项目,其中包括SVN外部。当一个新文件被添加到外部模块时,VisualSVN会将其下载到文件系统中,但不会将其添加到VisualStudio项目中;它必须手动添加

我可能会编写一个宏来自动化此过程,我想知道是否可以通过以下任一方法使其成为一个单步过程:

  • 让宏启动VisualSVN更新,然后执行该工作(问:是否可以从宏触发VisualSVN更新?)
  • 从VisualSVN连接到一个假想的“更新后”事件,触发一个宏来完成工作(问:是否存在这样的事件?)

  • 我假设您目前正在这样工作:您的“外部模块”只是源文件的松散集合,没有项目文件。每当添加源文件时,都会通过添加新的源文件来更新所有应用程序项目文件,以便将其编译到所有应用程序程序程序集中

    我认为你做错了。您的项目解决方案文件应包含对每个外部项目的独立visual studio项目文件的引用。每个源文件都应编译成一个程序集


    例如,您可以在多个web应用程序之间共享一个C#库。此库有自己的.csproj项目文件,该文件位于外部位置。如果将源文件添加到库中,则会更新.csproj。更新项目时,更新后的.csproj文件将通过svn:externals声明进行拉取。

    我知道很多人强烈认为svn:externals是个坏主意-希望我们可以将讨论保存到另一个线程中。谢谢将外部引用的项目集成到您的代码中的努力不会超过将项目添加到您的解决方案中的微小成本几个数量级吗?在引入外部引用时,只需执行一次,然后将更新的解决方案与外部引用一起签入。我是否遗漏了什么?您基本上是想让它执行
    显示所有文件
    命令,然后将不属于项目的所有项添加到其中吗?@agent9191:是的。虽然我还没有编写宏来实现这一点,但我想没有太多的内容。我不清楚的是如何将其与SVN更新过程联系起来。谢谢。出于这个问题的目的,我们是否可以将此体系结构视为给定的?为什么这种模式比每个模块一个项目更适合我们,有很多原因,我很乐意在其他地方探讨。@wcoenen-也许在这个问题上: