Git 回退代碼版本
在項(xiàng)目的開(kāi)發(fā)中,有時(shí)候還是會(huì)出現(xiàn),一些誤提交了一些代碼,這時(shí)候就會(huì)想撤回提交的代碼,在Git中有兩種方法可以使用,現(xiàn)在通過(guò)對(duì)比方法比較這兩種方法的區(qū)別,分別適用于哪些情況?
在Git中回退代碼,經(jīng)常使用revert或者reset來(lái)做,這兩種操作都可以用來(lái)回退,但是卻有比較大的區(qū)別,一般比較安全性的還是使用revert來(lái)做,revert是撤回對(duì)應(yīng)的提交記錄,然后再提交撤回記錄,只是會(huì)在Git歷史里多一些記錄,reset的操作是直接將git歷史回退到對(duì)應(yīng)的版本,之后的記錄全都撤回了,所以除非情況允許,不然不建議使用
git revert操作
git revert:revert撤回的意思,意思是撤回提交的代碼,然后在Git的所有提交記錄后面新增一次提交,不會(huì)撤回之前的代碼,所以是很安全性的撤回方法,不過(guò)就會(huì)新增一次撤回記錄
git revert使用方法:
# 撤回指定版本,后面可以加一個(gè)git記錄id
git revert [版本ID]
# 撤回上個(gè)版本的提交
git revert HEAD^
# 撤回上上個(gè)版本提交
git revert HEAD^^
# 或者寫成
git revert HEAD^2
如果有g(shù)it客戶端軟件,比如smartgit,可以直接在ui界面操作
然后再提交上去,重新生成一次撤回記錄
git reset 操作
git reset :reset,重置操作,是重置HEAD的位置,將代碼重置到某個(gè)版本,某個(gè)版本之后的提交都會(huì)被清掉,所以不是很安全,非特殊情況,不建議使用
git reset的語(yǔ)法格式為:
git reset [--soft | --mixed | --hard] [HEAD]
-
–mixed(默認(rèn)):默認(rèn)的參數(shù),將重置的更改留在工作區(qū)中
-
–soft:如果使用 --soft 參數(shù),將重置的更改保存在暫存區(qū)
-
–hard參數(shù):如果使用 --hard 參數(shù),工作區(qū)和暫存區(qū)都不會(huì)保存記錄,所以建議不要使用這種模式文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-723063.html
OK,下面使用git命令實(shí)踐一下文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-723063.html
# 找到要回退的commit版本號(hào),復(fù)制
git log
# 重置本地庫(kù)版本回退
git reset --mixed [commitid]
# 同步到遠(yuǎn)端倉(cāng)庫(kù),要寫上分支名稱
git push -f origin [branchName]
到了這里,關(guān)于Git 回退代碼的兩種方法對(duì)比的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!