git版本回退

由于多电脑使用一个版本仓库,经常出现版本冲突的情况,错误提示error: Your local changes to 'example.py' would be overwritten by merge. Aborting.Please, commit your changes or stash them before you can merge.,然后本次我的错误commit导致问题一直没解决,于是直接使用版本回退功能解决问题。

版本回退 git reset

使用git reset commit_id可以将版本号回到指定版本,commit_id如何指定?可以使用以下方法:

commit_id

git log

通过用git log可以查看提交历史,以便确定要回退到哪个版本。此方法一半适用与比较回退版本较少情况,因为git bash里输出的信息太多,不方便查看。

git log -n可查看最近n此提交,git log状态下按q键可退出。

git中,HEAD指向当前版本,上一版本HEAD^,上上版本HEAD^^,依次类推,也可使用HEAD~n来回退n个版本。

git GUI

可在git GUI中点击菜单上的 repository – visualize master’s History/visualize all branch History 查看历史版本。

git reset参数

git reset参数在git reset后输入,比如git reset --hard commit_id

mixed

将本地版本库的头指针全部重置到指定版本,且会重置暂存区,即这次提交之后的所有变更都移动到未暂存阶段

soft

软回退表示将本地版本库的头指针全部重置到指定版本,且将这次提交之后的所有变更都移动到暂存区

hard

将本地版本库的头指针全部重置到指定版本,也会重置暂存区,并且会将工作区代码也回退到这个版本

追加提交

回退版本之后可以使用git commit --amend进行追加提交,优点是不会产生新的commit-id

本文标题:git版本回退

文章作者:微石

发布时间:2018年07月15日 - 16:07

最后更新:2018年07月19日 - 11:07

原始链接:akihoo.github.io/posts/ef999dcb.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。