我将我的代码库从SVN迁移到了Git。我使用了这个网站。现在我在版本X中发现了一个错误。如果我只知道旧的SVN代码库中的版本号,该如何从我的Git代码库中检出代码呢?
谢谢你的帮助。
谢谢你的帮助。
使用git svn find-rev
子命令可以找到对应于Subversion版本的git提交。例如,如果您正在寻找对应于Subversion版本3431的提交,可以执行以下操作:
$ git svn find-rev r3431
42ed8bcf690fd0c655c5cee91b09258318fc56e8
然后,要检出该修订版本,只需使用第一行的对象名称,例如:如果是:
commit 42ed8bcf690fd0c655c5cee91b09258318fc56e8
Author: torstenrohlfing <torstenrohlfing@42a5c34f-2066-0410-bec5-ba365beb4995>
Date: Fri Sep 9 17:11:38 2011 +0000
FIX: do not update time stamps on pre-existing files that did not get updated.
git-svn-id: https://www.nitrc.org/svn/cmtk/trunk@3431 42a5c34f-2066-0410-bec5-ba365beb4995
git checkout 42ed8bcf69
如果您想尝试该版本,请执行此操作。(请注意,这将分离 HEAD,因此如果您不知道这意味着什么,建议先搜索“detached HEAD”)
git svn rebase
命令吗?你能否在日志中找到带有git-svn-id
行的最新提交记录?(例如,使用git log --grep=git-svn-id
) - Mark Longairgit svn fetch && git checkout $(git svn find-rev r3431)
。请注意,此版本需要存在。 - Luís Bianchin