所有操作要在git工程下进行 cd 你的项目拖进去(终端进行)
1.回退到当前版本(放弃所有修改)(这里只回退到最后一次提交的版本)
git status 回车 (查看状态)
git reset --hard 回车 (放弃当前所有修改及所有待commit)
2.针对单个文件的修改回退
git checkout haha.m 回车
3.回到某个版本,并保存该版本以后的修改。(此步骤慎重操作)
git log 回车 (查看提交日志 会退到指定版本) 以下是打印信息
commit cac5f6efe29163081694b6c2f6cf9303436a18f6
Author: AppleDate: Mon May 8 08:28:31 2017 +0800
2017 5. 8
git reset cac5f6efe29163081694b6c2f6cf9303436a18f6 回车
4.直接回到某个版本,放弃该版本以后的修改。
git log 回车
commit cac5f6efe29163081694b6c2f6cf9303436a18f6
Author: AppleDate: Mon May 8 08:28:31 2017 +0800
2017 5. 8
git reset --hard cac5f6efe29163081694b6c2f6cf9303436a18f6 回车
以上是操作本地git版本,以下操作远程仓库的版本(祸从手出,操作需谨慎)
1.回退远程仓库的版本
先在本地切换到远程仓库要回退的分支对应的本地分支,然后本地回退至你需要的版本,然后执行:
git push <仓库名> <分支名> -f
2.以当前版本为基础,回退指定个commit
首先,确认你当前的版本需要回退多少个版本,然后计算出你要回退的版本数量,执行如下命令
git reset HEAD~X //X代表你要回退的版本数量,是数字!!!!
需要注意的是,如果你是合并过分支,那么背合并分支带过来的commit并不会被计入回退数量中,而是只计算一个,所以如果需要一次回退多个commit,不建议使用这种方法
3.回退到和远程版本一样
有时候,当发生错误修改需要放弃全部修改时,可以以远程分支作为回退点退回到与远程分支一样的地方,执行的命令如下
git reset --hard origin/master // origin代表你远程仓库的名字,master代表分支名
网友评论