日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

idea代码回滚_IDEA远程仓库版本回滚

發(fā)布時(shí)間:2024/8/23 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 idea代码回滚_IDEA远程仓库版本回滚 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

使用 git 進(jìn)行項(xiàng)目的版本控制時(shí),肯定會(huì)遇到回滾版本的情況,回滾有兩種,一種是本地倉(cāng)庫(kù)回滾,另外一種是遠(yuǎn)程倉(cāng)庫(kù)回滾。以下詳細(xì)講解兩種回滾方式,本文主要講解遠(yuǎn)程回滾,以及常見使用誤區(qū)。

本地倉(cāng)庫(kù)回滾

本地回滾就很簡(jiǎn)單,只是要撤銷 commit 信息即可。可以直接使用 Reset HEAD進(jìn)行回滾。

HEAD^ 是還原到上一個(gè)版本,HEAD^^ 是還原到上上一個(gè)版本。

Reset Type 有三種:

mixed 默認(rèn)方式,只保留源碼,回退commit和index信息

soft 回退到某個(gè)版本,只回退了commit的信息,不會(huì)恢復(fù)到index file一級(jí)。如果還要提交,直接commit

hard 徹底回退,本地源碼也會(huì)變成上一個(gè)版本內(nèi)容

錯(cuò)誤的遠(yuǎn)程倉(cāng)庫(kù)回滾方式

遠(yuǎn)程倉(cāng)庫(kù)代碼回滾,如果上 Google 上一搜,基本出來(lái)的答案都是使用 Reset HEAD 加上 git push -f 強(qiáng)制提交的方式。

我本地測(cè)試了一下,如果有兩個(gè)人同時(shí)在這條分支上開發(fā),其中一個(gè)人 小 A 如果使用這種方式進(jìn)行回滾了遠(yuǎn)程倉(cāng)庫(kù)代碼,另外一個(gè)人 小 B 此時(shí)本地還是回滾之前的代碼,小 B 那里就會(huì)出現(xiàn)本地代碼版本高于遠(yuǎn)程分支版本的情況,此時(shí)若小 B 進(jìn)行了 push 操作,之前小 A 回滾的代碼就又會(huì)被推送到遠(yuǎn)程的倉(cāng)庫(kù)了。除非小 B 在回滾后,將其本地倉(cāng)庫(kù)的版本也進(jìn)行回滾。才能保證不會(huì)把回滾的代碼重新 push 回遠(yuǎn)程倉(cāng)庫(kù),但是如果開發(fā)人員多,就無(wú)法保證所有開發(fā)人員的本地分支都回滾!

因此,不要使用 git push -f 這種方式來(lái)強(qiáng)制回滾遠(yuǎn)程倉(cāng)庫(kù)代碼!

正確的遠(yuǎn)程倉(cāng)庫(kù)回滾方式

如圖所示,現(xiàn)在需要將遠(yuǎn)程倉(cāng)庫(kù)回滾到 dev-103 這次提交點(diǎn)。

選中 dev-103 這一行,右鍵選擇 Revert

這里提示需要 commit

commit 之后,push 到遠(yuǎn)程倉(cāng)庫(kù)中。最終結(jié)果如下:

新增了一條提交記錄,查看代碼已經(jīng)被回滾了

其他開發(fā)人員如果進(jìn)行了 pull,其本地倉(cāng)庫(kù)也被正確回滾到了 dev-103 提交點(diǎn),就無(wú)需再擔(dān)心回滾的代碼又被重新 push 到遠(yuǎn)程倉(cāng)庫(kù)啦。

搞定,收工!

總結(jié)

以上是生活随笔為你收集整理的idea代码回滚_IDEA远程仓库版本回滚的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。