真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Git中恢復(fù)被強(qiáng)制推送push失蹤的代碼怎么編寫(xiě)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)Git中恢復(fù)被強(qiáng)制推送push失蹤的代碼怎么編寫(xiě),文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。 

網(wǎng)站制作、成都網(wǎng)站制作的關(guān)注點(diǎn)不是能為您做些什么網(wǎng)站,而是怎么做網(wǎng)站,有沒(méi)有做好網(wǎng)站,給創(chuàng)新互聯(lián)公司一個(gè)展示的機(jī)會(huì)來(lái)證明自己,這并不會(huì)花費(fèi)您太多時(shí)間,或許會(huì)給您帶來(lái)新的靈感和驚喜。面向用戶友好,注重用戶體驗(yàn),一切以用戶為中心。

 前言

Git是一個(gè)易學(xué)難精的分布式版本控制系統(tǒng),被我們碼農(nóng)常用于代碼的管理。如果你還不了解Git,建議先通過(guò)廖雪峰的Git教程進(jìn)行了解,再來(lái)看本文,因?yàn)楸疚囊允褂眉记蔀橹?,不?huì)在基礎(chǔ)名詞上做過(guò)多解釋。

 

恢復(fù)被強(qiáng)制推送push失蹤的代碼

在常規(guī)的開(kāi)發(fā)流程中,難免有時(shí)因?yàn)楦鞣N原因(例如需要使用git rebase)會(huì)需要使用到git push -f,也就是強(qiáng)制推送,該命令會(huì)覆蓋遠(yuǎn)程分支。

但如果操作不當(dāng),會(huì)容易把小伙伴的之前提交的commit給覆蓋掉,不要慌,這并不代表你小伙伴的commit已經(jīng)永遠(yuǎn)找不回來(lái)了,大部分情況下,他們還是可以被找回的。

git reflog 可以查看所有分支的所有操作記錄(包括(包括commit和reset的操作),包括已經(jīng)被刪除的commit記錄,git log則不能查看已經(jīng)刪除了的commit記錄

雖然有reflog這跟救命稻草,但由于Git會(huì)定時(shí)gc(回收),清理掉reflog,所以被人覆蓋后不要等待太久才進(jìn)行恢復(fù)操作,不然可能就真的找不回了。

 

操作方法

  1. 備份當(dāng)前工作區(qū)的數(shù)據(jù)

你可以使用git stash等命令備份下現(xiàn)在正在寫(xiě)的代碼

  1. 在命令行輸入git reflog/git log -g

顯示所有歷史操作,找到你需要的提交(包括已經(jīng)被刪除的commit記錄,git log則不能查看已經(jīng)刪除了的commit記錄)

Git中恢復(fù)被強(qiáng)制推送push失蹤的代碼怎么編寫(xiě)  

2.1 強(qiáng)制回退到當(dāng)時(shí)被刪除的commit

git reset --hard 
 

2.2 或者直接

git cherry-pick 
 

直接把當(dāng)時(shí)版本的工作拿回來(lái)。不過(guò)如果有沖突的話還要處理沖突。

  1. 強(qiáng)推上遠(yuǎn)程分支

git push -f origin 
 

如果引起commit丟失的原因并沒(méi)有記錄在reflog 中,比如運(yùn)行了rm -Rf .git/logs/, 因?yàn)?reflog 數(shù)據(jù)是保存在 .git/logs/ 目錄下的,這樣就沒(méi)有 reflog 了。

可以使用 git fsck 工具,該工具會(huì)檢查倉(cāng)庫(kù)的數(shù)據(jù)完整性。如果指定 --full 選項(xiàng),該命令顯示所有未被其他對(duì)象引用 (指向) 的所有對(duì)象:

Git中恢復(fù)被強(qiáng)制推送push失蹤的代碼怎么編寫(xiě)  

然后,用相同的方法就可以恢復(fù)它,即創(chuàng)建一個(gè)指向該 SHA 的分支。

是不是對(duì)于強(qiáng)推git push -f不再慌了呢?

上述就是小編為大家分享的Git中恢復(fù)被強(qiáng)制推送push失蹤的代碼怎么編寫(xiě)了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)站欄目:Git中恢復(fù)被強(qiáng)制推送push失蹤的代碼怎么編寫(xiě)
文章URL:http://weahome.cn/article/jjopic.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部