Git使用-版本回退

摘要:
版本库的回退问题

1.已经commit没有push,撤销用reset

https://blog.csdn.net/dong19900415/article/details/70495716

在git push的时候,有时候我们会想办法撤销git commit的内容
1、找到之前提交的git commit的id git log找到想要撤销的id
2、git reset –hard id 完成撤销,同时将代码恢复到前一commit_id 对应的版本
3、git reset id
完成Commit命令的撤销,但是不对代码修改进行撤销,可以直接通过git commit 重新提交对本地代码的修改

reset
git reset [--soft | --mixed | --hard

–hard
源码也会回退到某个版本,commit和index 都回回退到某个版本.(注意,这种方式是改变本地代码仓库源码 )
注:index就是本地仓库的index
–mixed (默认)
会保留源码,只是将git commit和index 信息回退到了某个版本.
–soft
保留源码,只回退到commit 信息到某个版本.不涉及index的回退,如果还需要提交,直接commit即可.
注:相当于自己在修改之前,没有update一样

2 已经push 撤销用revert

git revert c011eb3c20ba6fb38cc94fe5a8dda366a3990c61
git revert 是用一次新的commit来回滚之前的commit,

git reset是直接删除指定的commit
git reset 当你有些commit不想被别人看见的时候
git reset 是把HEAD向后移动了一下,而git revert是HEAD继续前进,只是新的commit的内容和要revert的内容正好相反,能够抵消要被revert的内容。
git revert是提交一个新的版本,将需要revert的版本的内容再反向修改回去

参考文献:
http://yijiebuyi.com/blog/8f985d539566d0bf3b804df6be4e0c90.html
https://www.cnblogs.com/0616--ataozhijia/p/3709917.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章