我目前正在MS VS2010中开发一个应用程序,该应用程序基于客户端-服务器架构,在VS中每个部分都有一个项目。直到最近,他们都在Hg中有自己的存储库,但我决定将它们移到一起,因为现在有相当多的文件是共享的。
我一直在使用硬链接来确保一个文件上的更改传播到另一个文件夹/项目中的同一个文件。但是,如果您克隆存储库或从联机存储库签出,则硬链接会断开。
我已经尽可能多地阅读了soft&与汞的硬链接,在这一点上,它们似乎都不是一个好的、可移植的解决方案。你建议在两个项目之间共享文件的方法是什么,记住我理想情况下想要一个也反映在VS中的干净结构?
谨致问候,最大
您可以使用Mercurial的子存储库功能将共享文件放在外部存储库中,并在需要的地方共享。还有客户存储库扩展,它相对较新,重量也比子存储库轻。
但是,我不会在版本控制中解决它,而是会重新安排您的Visual Studio项目,以便将共享代码编译为客户端和服务器程序集使用和依赖的程序集。在程序集级别而不是代码级别共享代码
如果您真的必须保留现有的结构,我会使用NTFS连接(类似于UNIX风格的软链接)来连接共享代码中需要连接的地方。然后将这些连接添加到存储库的忽略列表中(在.hgignore
中)。创建您和其他开发人员可以运行的PowerShell脚本,该脚本将使用正确的连接初始化您的存储库。