断开版本控制

VJ.*_*VJ. 1 svn git version-control mercurial dvcs

我的团队在断开模式下工作.即他们开发应用程序并在公司网络内部使用SVN来管理代码的版本控制.

我坐在客户办公室,无法从客户机器直接访问我公司的网络.我维护自己的SVN,每天检查从我的团队收到的代码丢弃,并对代码进行更改.

我在这种操作模式中面临两个问题.

  1. 如果我的团队删除/重命名某些文件,我只是将从我的团队收到的新代码粘贴到我的工作副本上.删除的文件仍保留在我的工作副本中.
  2. 为了避免问题一个..我让他们发给我补丁文件.补丁文件的成功率更高,但无法解决二进制文件问题.因此,如果我的团队在代码库中添加了新的images/xls模板等,我不会通过补丁文件获取它们.2.

因此,我开始觉得两个断开连接的SVN存储库不适合我的情况.

  • 你们之前有过这种情况吗?
  • 你做了什么?
  • SVN中有什么东西可以帮助我吗?
  • 或者是否有另一个版本控制系统可以帮我解决这个问题?
  • 如果是,您能指点我在VCS中的相关命令吗?

免费替代品是首选.

adl*_*adl 5

我会把SVN服务器转换成像git这样真正的DVCS.即使没有直接连接,也可以使用电子邮件提交的补丁(这适用于二进制文件)传播之间的更改.见man git-format-patchesman git-am.而且man git-bundle,如果你不打算读书的补丁.

如果无法转换中央服务器,您仍然可以要求SVN网络上的某人在git-svn生成他发送给您的补丁之前使用,或者在应用您发送给他的补丁之后使用.(杀死SVN当然是一个更好的长期解决方案.)