Version control 从git SVN恢复中央SVN回购
基本上,我想,有点像这样:Version control 从git SVN恢复中央SVN回购,version-control,git-svn,Version Control,Git Svn,基本上,我想,有点像这样: svn update svn merge -r 150:140 . svn commit -m "Rolled back to r140" 但是我使用的是gitsvn,似乎找不到一个等价物 我尝试在一个新分支上本地设置所有内容,方法是签出一个早期的提交,它是trunk的祖先(中央回购的当前提交)。我做了一些额外的更改,现在我无法git svn rebase或git svn dcommit而不从svn得到一个错误 我尝试在不做额外更改的情况下检查相同的提交,然后运行g
svn update
svn merge -r 150:140 .
svn commit -m "Rolled back to r140"
但是我使用的是gitsvn
,似乎找不到一个等价物
我尝试在一个新分支上本地设置所有内容,方法是签出一个早期的提交,它是trunk
的祖先(中央回购的当前提交)。我做了一些额外的更改,现在我无法git svn rebase
或git svn dcommit
而不从svn得到一个错误
我尝试在不做额外更改的情况下检查相同的提交,然后运行git svn dcommit
,这表示它正在提交中央回购协议,但实际上似乎没有做任何事情
如何返回到以前的提交,然后开始进行新的更改?您的任务基本上是将git头部重置为r140状态,但以一种允许直接提交git svn dcommit的方式 一种方法是:
# checkout git revision of the desired state
git svn find-rev r140 | xargs git checkout
# reset HEAD to the revision 150, assuming it was the latest svn commit in trunk
git reset trunk
git add -u
git commit -m "Rolled back to r140"
git svn dcommit
你们也可以看一看这条线