什么是将文件夹分成Subversion工作副本的好方法

时间:2014-09-10 16:35:32

标签: git svn version-control

我使用Subversion服务器与外部公司合作。本地我有一个git存储库与相同的项目,因为在我的公司我们使用git的一切。我想定期将更改从我的git存储库转移到Subversion服务器上,最好是以自动方式。我已尝试使用两种不同的合并工具kdiff3(http://kdiff3.sourceforge.net/)和Kaleidoscope(http://www.kaleidoscopeapp.com/)但是在两种情况下都将文件从git文件夹复制到Subversion工作副本.svn文件夹被删除这不是我想要的,因为这会将Subversion工作副本放入"阻塞"州。我也可以对git repo进行存档并将存档文件夹复制到Subversion工作副本中,但是当在git repo上执行文件删除时,粘贴到Subversion工作副本中不会删除丢失的文件,所以它会排序得到我想要的东西。关于我可能没有考虑过的方法的任何建议?

2 个答案:

答案 0 :(得分:4)

使用单点变更(Git'工作目录)并使用git-svn(或SubGit

将Git-repo与Subversion相关联

答案 1 :(得分:0)

我想到的第一个(基于命令行的)工具是rsync。它的好处在于它将传播文件删除,忽略未更改的文件等。它有许多命令行选项,允许您调整其行为。这可能是example。但这只是我通过快速谷歌搜索找到的一个链接,使用rsync将更改合并到另一个文件夹'中。您必须进行一些研究和实验,以确定rsync是否符合您的需求:)

因此工作流程可以是,假设两个回购目前同步:

  1. 在git working dir中进行更改(并按照您的要求进行git提交/推送)
  2. ' svn update'在svn working dir中
  3. 使用rsync将更改从git working dir合并到svn working dir。
  4. 使用svn工具验证并提交svn working目录中的更改。