赞
踩
简单来说git checkout
有两种使用方式
git checkout master
git checkout 5d27a489853c9c51
正常状态头指针HEAD
指向的是分支 branch 也就是当前分支中的最后一次提交。
运行 之后
git checkout 87ec91d
这是分离的头部状态;HEAD直接指向提交而不是分支。
分离头指针可以让我们回到过去。可以通过git log 命令回到我们想去的任何地方。后悔药啊!
不仅如此还可以在历史版本的基础上做修改。
执行命令
git checkout 87ec91d
执行结果
git checkout 87ec91d
如下
echo "Welcome to the alternate timeline, Morty!" > new-file.txt
git add .
git commit -m "Create new file"
echo "Another line" >> new-file.txt
git commit -a -m "Add a new line to the file"
git log --oneline
如果要保留这些更改,我们应该怎么做?如果你想丢弃它们,我们该怎么办?这就是我们接下来要看到的。
git checkout <branch-name>
如果要保留使用分离头所做的更改,只需创建一个新分支并切换到它。我们可以在到达分离的头部或创建一个或多个提交后立即创建它。结果是一样的。唯一的限制是,我们应该在返回正常分支之前执行此操作。如果执行切换到正常分支也会有提示。
git branch new-branch 29e503c
git checkout new-branch
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。