git reset

博文轉(zhuǎn)載自:http://www.tech126.com/git-reset/; 如果看不懂的話,請在git下練習(xí),如果練習(xí)后任然有不懂的,可以留言也可以發(fā)送郵件到luoquantao@126.com

reset命令有3種方式:

1:git reset –mixed:此為默認(rèn)方式,不帶任何參數(shù)的git reset,即時這種方式,它回退到某個版本,只保留源碼,回退commit和index信息

2:git reset –soft:回退到某個版本,只回退了commit的信息,不會恢復(fù)到index file一級。如果還要提交,直接commit即可

3:git reset –hard:徹底回退到某個版本,本地的源碼也會變?yōu)樯弦粋€版本的內(nèi)容

12#回退所有內(nèi)容到上一個版本

git reset HEAD^

#回退a.py這個文件的版本到上一個版本

git reset HEAD^ a.py

#向前回退到第3個版本

git reset –soft HEAD~3

#將本地的狀態(tài)回退到和遠(yuǎn)程的一樣

git reset –hard origin/master

#回退到某個版本

git reset 057d

#回退到上一次提交的狀態(tài),按照某一次的commit完全反向的進(jìn)行一次commit

git revert HEAD

如果我們某次修改了某些內(nèi)容,并且已經(jīng)commit到本地倉庫,而且已經(jīng)push到遠(yuǎn)程倉庫了

這種情況下,我們想把本地和遠(yuǎn)程倉庫都回退到某個版本,該怎么做呢?

前面講到的git reset只是在本地倉庫中回退版本,而遠(yuǎn)程倉庫的版本不會變化

這樣,即時本地reset了,但如果再git pull,那么,遠(yuǎn)程倉庫的內(nèi)容又會和本地之前版本的內(nèi)容進(jìn)行merge

這并不是我們想要的東西,這時可以有2種辦法來解決這個問題:

1:直接在遠(yuǎn)程server的倉庫目錄下,執(zhí)行g(shù)it reset –soft 10efa來回退。注意:在遠(yuǎn)程不能使用mixed或hard參數(shù)

2:在本地直接把遠(yuǎn)程的master分支給刪除,然后再把reset后的分支內(nèi)容給push上去,如下:

#新建old_master分支做備份

git branch old_master

#push到遠(yuǎn)程

git push origin old_master:old_master

#本地倉庫回退到某個版本

git reset –hard bae168

#刪除遠(yuǎn)程的master分支

git push origin :master

#重新創(chuàng)建master分支

git push origin master

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • git常用命令 GIT常用命令備忘:http://stormzhang.com/git/2014/01/27/gi...
    新篇章閱讀 8,877評論 1 26
  • 1.git的安裝 1.1 在Windows上安裝Git msysgit是Windows版的Git,從https:/...
    落魂灬閱讀 12,843評論 4 54
  • 我國企業(yè)所得稅法規(guī)定,企業(yè)每一納稅年度的收入總額,減除不征稅收入、免稅收入、各項扣除以及允許彌補(bǔ)的以前年度虧損后的...
    8647cbd12910閱讀 328評論 0 0
  • 這是我第一次參加縣里組織的培訓(xùn)活動!盡管之前每年都有安排培訓(xùn),而且我們連續(xù)幾年參加了縣教體局與縣婦聯(lián)組織的廣場...
    夢里飄香閱讀 361評論 0 0

友情鏈接更多精彩內(nèi)容