Mercurial集成:將推送更改到上游(Push)

2018-01-04 11:03 更新

將推送更改到上游(Push)

IntelliJ IDEA允許您通過(guò)按Enter或F2選擇元素切換到編輯模式。

如果要使用Mercurial集成將推送更改到上游,請(qǐng)執(zhí)行下列操作:

  1. 從主菜單中選擇:VCS | Mercurial | Push。“推送提交(Push Commits)”對(duì)話框打開(kāi),顯示所有Mercurial存儲(chǔ)庫(kù)(對(duì)于多存儲(chǔ)庫(kù)項(xiàng)目),并列出自上次推送以來(lái)每個(gè)存儲(chǔ)庫(kù)中當(dāng)前分支中所做的所有提交。如果您有一個(gè)項(xiàng)目使用多個(gè)不同步控制的存儲(chǔ)庫(kù),則默認(rèn)情況下只選擇當(dāng)前存儲(chǔ)庫(kù)。有關(guān)如何啟用同步存儲(chǔ)庫(kù)控制的詳細(xì)信息,請(qǐng)參閱版本控制設(shè)置:Mercurial。
  2. 如有必要,你可以通過(guò)單擊來(lái)修改遠(yuǎn)程存儲(chǔ)庫(kù)的路徑。標(biāo)簽將變成一個(gè)文本字段,你可以鍵入新的路徑或通過(guò)按下Ctrl+Space來(lái)調(diào)用完成。如果存儲(chǔ)庫(kù)中沒(méi)有遙控器,則會(huì)出現(xiàn)“定義遠(yuǎn)程(Define remote)”鏈接。點(diǎn)擊此鏈接并在打開(kāi)的對(duì)話框中指定遠(yuǎn)程名稱和URL。
  3. 如果您想在推送更改之前預(yù)覽更改,請(qǐng)選擇所需的提交。右側(cè)窗格顯示所選提交中包含的更改。您可以使用工具欄按鈕來(lái)檢查提交詳細(xì)信息。如果提交的作者與當(dāng)前用戶不同,則此提交用星號(hào)標(biāo)記。
  4. 如果要將活動(dòng)書(shū)簽與提交一起推送(默認(rèn)情況下不會(huì)將它們發(fā)送到遠(yuǎn)程存儲(chǔ)庫(kù)),請(qǐng)選擇“導(dǎo)出活動(dòng)書(shū)簽(Export Active Bookmarks)”選項(xiàng)。
  5. 點(diǎn)擊"就緒"按鈕,然后選擇你想從下拉菜單中執(zhí)行的操作: push或push--force。

您可以按下Ctrl+Q為所選的提交來(lái)顯示額外的信息,例如提交作者、時(shí)間、哈希和提交信息。

如果選擇整個(gè)存儲(chǔ)庫(kù),則所有提交的所有文件都將列在右側(cè)窗格中。

如果在多個(gè)提交中修改了同一文件,那么只有在選擇這些提交或整個(gè)存儲(chǔ)庫(kù)時(shí)才會(huì)列出一次,如果您為該文件調(diào)用文件的差異查看器,所有更改都將被壓縮到一起。

使用強(qiáng)制推送

當(dāng)你運(yùn)行push時(shí),如果遠(yuǎn)程存儲(chǔ)庫(kù)發(fā)生了缺少的更改,并且要使用本地存儲(chǔ)庫(kù)副本進(jìn)行覆蓋,則Mercurial將拒絕完成該操作。通常情況下,您需要執(zhí)行pull與遠(yuǎn)程進(jìn)行同步,然后才能使用更改進(jìn)行更新。

注意:使用--force將導(dǎo)致所有新的頭被推到所有的分支上,這可能會(huì)給你的團(tuán)隊(duì)帶來(lái)混亂。

該--force push命令將禁用此檢查,并允許您覆蓋遠(yuǎn)程存儲(chǔ)庫(kù),從而刪除其歷史記錄并導(dǎo)致數(shù)據(jù)丟失。

除非絕對(duì)必要(例如,如果您不小心推送了一些敏感數(shù)據(jù)),否則應(yīng)該避免重新啟動(dòng)分支并修改其歷史記錄。

您需要執(zhí)行--force push的另一種可能的情況是:當(dāng)您推送一個(gè)推送的分支,然后將其推送到遠(yuǎn)程服務(wù)器。在這種情況下,當(dāng)您嘗試推送時(shí),Mercurial將拒絕您的更改,因?yàn)檫h(yuǎn)程參考不是本地參考的祖先。如果你在這種情況下執(zhí)行“pull”操作,則最終會(huì)有兩個(gè)分支的副本,然后需要合并。

如果您決定強(qiáng)制推出重新設(shè)計(jì)的分支,并且您正在團(tuán)隊(duì)中工作,請(qǐng)確保:

  • 沒(méi)有人pull你的分支,并做了一些本地更改
  • 所有待處理的更改均已提交并推送
  • 您有該分支的最新更改

從上游拉更改(Pull)

使用來(lái)自遠(yuǎn)程存儲(chǔ)庫(kù)(Pull)的更改刷新本地Mercurial存儲(chǔ)庫(kù)涉及檢索更改并將其應(yīng)用于本地?cái)?shù)據(jù)。IntelliJ IDEA的Mercurial集成提供了指定強(qiáng)制Pull設(shè)置和自定義Pull過(guò)程的接口。

從遠(yuǎn)程存儲(chǔ)庫(kù)中提取更改

  1. 在主菜單上,選擇:VCS | Mercurial | Pull Changesets。該P(yáng)ull對(duì)話框打開(kāi)。
  2. 指定源遠(yuǎn)程存儲(chǔ)庫(kù)所需的URL地址。
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)