我需要配置一个半复杂的SVN设置。已有一个第三方公司正在开发的SVN存储库。我们必须创建一个本地存储库,用于提取和合并来自他们的代码,3个虚拟机,这些虚拟机是开发人员将要编码的整个生产环境的工作副本并提交到本地存储库,以及仅提取的生产VM来自当地的回购。
我需要一种方法来使本地存储库从远程存储库中提取代码,同时提供一种从本地提交中查看已更改文件的方法,因此远程更改不会覆盖我们的工作。
答案 0 :(得分:1)
这有点复杂。我认为你不希望你的本地仓库是只读的,这使你的远程仓库同步到你的本地非常困难。大多数svnsync方案取决于两者是彼此完全相同的重复。
您需要跟踪远程存储库中的上一次同步修订,并使用svnrdump dump
从远程存储库中提取未同步事务的转储。我没有这样做,但看起来并不太糟糕。但是,您必须关闭本地存储库才能提供远程修订,并且必须确保本地和远程存储在两个不同的URL上。
答案 1 :(得分:0)
现在是转向DVCS的时候了。从SVN迁移到Mercurial并不是一件令人头痛的问题,并且解决了两个命令的成本相关的多重相关回购(任何回购量)的问题。
但是,如果你仍然喜欢SVN-way(在这种情况下不好的方式):