我们有一个新的git repo,从svn repo中激怒了。 git repo现在是进一步开发的主要存储库。这个回购是一个托管的回购。 另一方面的svn回购将作为非git用户的发布渠道。 问题是,如何从git repo不时更新svn回购?我读了很多关于git-svn的内容,并且不应该使用merge等(请参阅Is git-svn dcommit after merging in git dangerous?)。 但合并会发生在git仓库中,我们不想通过奇怪的规则来限制git仓库的开发(比如“只允许rebase”)。git-svn:保持git repo和svn repo同步
所以问题很简单:他们是如何保持svn repo与git repo同步的最佳做法(比方说每两周)。是否有可能将更改从svn安全地重新传输到git(如果必须对svn repo应用紧急修复程序,则很少会发生这种情况)。
由于新的git repo是托管的,所以在中间必须有一个svn-git repo作为中介。这个回购可以用来将git-merges重新链接成git-rebases左右。所有中间的git提交都作为一个blob委托给SVN也是非常好的。
听起来真的很有趣 - gitk的“运输工具”;-) 我会给这个机会! – Udo
@Udo:你当然也可以使用命令行和'git cherry-pick',但是我发现GUI更方便。如果您使用的是TortoiseGit,您甚至可以一次选择多个提交选择。 – eckes