到目前为止我做了什么:
git svn init http://example.com/svn/trunk
(最新修订版为1000)
git svn fetch -r1000
git svn rebase
我的回购是最新的,我在日志中有所有提交自rev。 1000。
如何导入自修订版800以来的历史记录?
如何结帐到修订版800?
答案 0 :(得分:1)
要查找特定svn修订版的提交哈希,您可以执行
git svn find-rev r800
但是,只有在git存储库中进行了subversion提交后,这才会对您有所帮助。最好的选择通常是获得包含整个颠覆历史的结账。
git svn clone http://example.com/svn/trunk
或者如果你想,所有分支机构以及主干
git svn clone -s http://example.com/svn/
如果你想继续沿着当前的路径(这将是痛苦的)你可以获得第二个git存储库,其中包含比当前更多的修订,然后使用git grafts将它们一起移植。因此,例如,如果您确定只需要修订版800,则可以执行另一个
git svn init http://example.com/svn/trunk git svn fetch -r 800
但是,如果你想要修订版600,400,900等,你将永远不得不搞乱你的本地git存储库。最好重新开始,获得一个包含所有修订版的正确git svn checkout,然后你可以自由地检查任意修订版,而不必跳过篮球。
答案 1 :(得分:1)
你可以这样做:
git svn fetch -r1000:HEAD
git svn rebase
你也可以获得这些提交。
答案 2 :(得分:0)
我不知道如何解决第一个问题,但就第二个问题而言,就像找到该修订版的提交哈希标记并输入git checkout <commit tag>
一样简单。