我最近从SVN转到Git,对一些事情有点困惑。我需要通过调试器运行脚本的以前版本,所以我做了git checkout <以前版本哈希>,并做了我需要做的事情。
现在我想回到最新的版本,但我不知道它的哈希值。当我输入git log时,我看不到它。
我该怎么做呢?此外,是否有一种比输入哈希值更简单的方法来更改版本-例如“返回两个版本”或“转到最近的年代”?
我最近从SVN转到Git,对一些事情有点困惑。我需要通过调试器运行脚本的以前版本,所以我做了git checkout <以前版本哈希>,并做了我需要做的事情。
现在我想回到最新的版本,但我不知道它的哈希值。当我输入git log时,我看不到它。
我该怎么做呢?此外,是否有一种比输入哈希值更简单的方法来更改版本-例如“返回两个版本”或“转到最近的年代”?
当前回答
返回最新版本。
git checkout <branch-name>
例如,git checkout master或git checkout dev
其他回答
返回最新版本。
git checkout <branch-name>
例如,git checkout master或git checkout dev
对于Git 2.23+(2019年8月),最好的做法是使用Git switch,而不是令人困惑的Git checkout命令。
创建一个基于旧版本的新分支:
git switch -c temp_branch HEAD~2
返回当前主分支:
git switch master
首先,您可以使用分支名称签出。
我知道有几种方法可以移动HEAD,但是我将把它留给git专家来列举它们。
我只是想建议gitk——所有——当开始使用git时,我发现它非常有用。
这对我来说很管用(我仍然在主分支上):
git reset --hard origin/master
这里的一些答案假设在您决定签出旧的提交之前,您在主分支上。但情况并非总是如此。
git checkout -
将指向您之前所在的分支(不管它是否是主分支)。