什么是“svn update -r”的git等价物?

时间:2009-02-21 19:13:43

标签: git svn git-svn git-checkout svn-update

我是最近的git转换器。很高兴能够使用git-svn在不干扰svn服务器的情况下在本地保留我的分支。最新版本的代码中存在一个错误。我想建立一个工作时间,以便我可以使用git bisect。我无法找到正确的命令,以便及时返回。感谢。

7 个答案:

答案 0 :(得分:62)

git checkout HEAD~1

这会将您当前的HEAD更早地移动到一个版本。

git checkout <sha>

这会将您当前的HEAD移动到给定的修订版本。使用git loggitk查找您要查找的修订版。

答案 1 :(得分:20)

回到最新版本(相当于:svn up),你需要更新分支,通常是:

git checkout master

这是因为HEAD指的是正在检出的版本。

答案 2 :(得分:1)

git pull 
对于你正在寻找的东西,

似乎是一个更合适的命令

答案 3 :(得分:0)

这似乎做了我想要的,这也是我认为你也要求的

git checkout *

答案 4 :(得分:0)

如果您正在使用TortoiseGit,那么

Right Click in project folder > TortoiseGit > Pull

答案 5 :(得分:0)

2019年更新:正确的命令应该是

git restore -s @~1

(例如,以HEAD父提交中的状态还原文件)

那是因为:

  • git checkout is too confusing,处理分支和文件。
    git restore ...自Git 2.23(2019年8月)起恢复文件。
    无需git checkout HEAD~ -- .
  • Git 1.8.4引入了@作为HEAD的快捷方式。

答案 6 :(得分:0)

在git中没有与svn update完全相同的内容。如果删除文件,即使再次拉动它也将显示为已删除状态。唯一的选择是检出该文件。如果您误删除了多个文件并想恢复它们,则可以重命名该存储库并再次克隆它。这就是我的工作。