IDEA管理Mercurial分支和書簽

2018-01-02 10:46 更新

使用 IntelliJ IDEA,您可以使用命名分支和輕量級分支(書簽)。IntelliJ IDEA提供了在分支和書簽之間創(chuàng)建、合并和切換的界面,請參閱切換工作目錄。您也可以在嵌入式終端中運行命令,請參閱“使用嵌入式本地終端”。

打開分支彈出列表

大多數(shù)帶有分支和書簽的操作都是從分支彈出列表中調(diào)用的。

Mercurial分支

該列表顯示項目根目錄下的所有Mercurial存儲庫,所有命名的分支以及其中的所有書簽。當(dāng)前的存儲庫和當(dāng)前的書簽都標(biāo)有勾號。當(dāng)前命名分支的名稱顯示在狀態(tài)欄的專用hg區(qū)域中:

Mercurial分支

要打開“分支”彈出列表,請執(zhí)行以下操作之一:

  • 在狀態(tài)欄上,單擊專用hg區(qū)域中當(dāng)前命名分支的名稱。
    Mercurial分支
  • 在主菜單上,選擇:VCS | Mercurial | 分支機構(gòu)。
  • 在編輯器或版本控制工具窗口的上下文菜單上,選擇:Mercurial | 分支機構(gòu)。

創(chuàng)建命名分支

  1. 在“分支”彈出列表中,單擊“新建分支”。
  2. 在打開的“新建分支”對話框中,指定新分支的名稱。

新分支立即變?yōu)榛顒訝顟B(tài),其名稱顯示在hg區(qū)域的狀態(tài)欄中。

創(chuàng)建一個書簽

  1. 在“分支”彈出列表中,單擊“新建書簽”。
  2. 在打開的“新建書簽”對話框中,指定要創(chuàng)建的書簽的名稱。
  3. 指定是否要立即切換到新的書簽。
    • 要激活新的書簽,從而啟用跟蹤和更新的輕量級分支書簽標(biāo)識,請將“Inactive”復(fù)選框清除。新的書簽立即變?yōu)榛顒訝顟B(tài),并在分支彈出列表中用勾號標(biāo)記其名稱。
    • 要創(chuàng)建不活動的書簽,即保留在當(dāng)前輕量級分支(書簽)或命名分支中,并稍后切換到新書簽,請選中“Inactive”復(fù)選框。

關(guān)閉一個分支

根據(jù)Mercurial工作流程,當(dāng)您完成功能開發(fā)并且不期望有任何進(jìn)一步的更改時,請關(guān)閉相應(yīng)的分支。在活動分支之間,日志視圖等中不顯示關(guān)閉的分支。要關(guān)閉分支,請執(zhí)行以下操作:

  1. 在分支彈出窗口中,單擊關(guān)閉分支。在提交更改對話框就會顯示出來。
  2. 單擊提交并關(guān)閉。所有更改將被提交,當(dāng)前分支將被關(guān)閉。

請注意,如果您在“存儲庫”部分列出了多個存儲庫,則相應(yīng)的菜單選項將切換到關(guān)閉分支,并且close操作將應(yīng)用于所有這些分支。

合并命名分支和書簽

您可以將命名分支或書簽與另一個命名分支、另一個書簽或由標(biāo)簽或修訂版號標(biāo)識的特定變更集合并。

  • 將命名分支或書簽與另一個命名分支或書簽合并意味著合并其頭部。合并命名分支和書簽可以通過菜單項:VCS |Mercurial | 合并來調(diào)用,從“分支”彈出列表中打開“特定于Mercurial的合并”對話框。
    Mercurial分支
  • 合并具有變更集的命名分支或書簽意味著合并分支頭與指定的變更集。變更集可以通過版本號或標(biāo)簽來標(biāo)識,請參閱https://www.mercurial-scm.org/wiki/Tag。合并具有特定變更集的命名分支或書簽只能通過“VCS |Mercurial | 合并”調(diào)用。

有關(guān)合并操作本身的定義和Mercurial特定的細(xì)節(jié),請參閱https://www.mercurial-scm.org/wiki/Merge。

默認(rèn)情況下,Mercurial要求在合并之前,當(dāng)前工作目錄應(yīng)該是干凈的,也就是說,它不應(yīng)該包含任何未提交的更改。否則,合并操作失敗,IntelliJ IDEA將顯示相應(yīng)的錯誤消息。該消息還建議您通過運行hg merge <target branch, bookmark, or changeset> -C 放棄未提交的更改來清除當(dāng)前的工作目錄。

如果您當(dāng)前的工作副本不干凈,則可以按照“Shelving”和“Unshelving Changes”中所述提交更改或擱置它們。

將命名分支或書簽與另一個命名分支或書簽合并

將命名分支或書簽與另一個命名分支或書簽合并意味著合并其頭部。

  1. 確保當(dāng)前的工作目錄是干凈的,也就是說,它不包含任何未提交的更改。如果有的話就進(jìn)行提交或擱置更改。
  2. 通過執(zhí)行以下操作之一來調(diào)用合并:
    • 在“分支”彈出列表中,單擊要合并的分支或書簽的名稱,然后在彈出菜單中選擇“合并”:
    • 在主菜單上選擇:VCS | Mercurial | Merge或者在編輯器的上下文菜單上選擇:Mercurial | Merge。

      在打開的“Merge”對話框中:

      1. 從存儲庫下拉列表中選擇目標(biāo)存儲庫,該列表顯示當(dāng)前項目根目錄下可用的所有Mercurial存儲庫。
      2. 選擇“分支”或“書簽”選項,然后選擇指定的分支或書簽以合并當(dāng)前工作目錄。
  3. 解決沖突。只要發(fā)生沖突,“文件合并沖突”對話框?qū)⒋蜷_,并顯示沖突文件列表。使用對話框的控件來解決問題:
    • 要保留當(dāng)前工作目錄的版本,請單擊“Accept Yours”。
    • 要保留要合并的分支的版本,請單擊“Accept Theirs”。
    • 要手動解決沖突,單擊“Merge”并使用沖突解決工具,如解決沖突中所述。

    如果在合并過程中沒有沖突,則操作默默通過,合并日志顯示在版本控制工具窗口中。

將命名分支或書簽與變更集合并

使用變更集合并命名分支或書簽意味著將分支頭與指定的變更集合并。變更集可以通過版本號或標(biāo)簽來標(biāo)識,請參閱https://www.mercurial-scm.org/wiki/Tag。

  1. 確保當(dāng)前的工作目錄是干凈的,也就是說,它不包含任何未提交的更改。提交或擱置更改(如果有的話)。
  2. 在主菜單上選擇:VCS | Mercurial | Merge或者在編輯器的上下文菜單上選擇:Mercurial | Merge。
  3. 在打開的“Merge”對話框中:
    1. 從存儲庫下拉列表中選擇目標(biāo)存儲庫,該列表顯示當(dāng)前項目根目錄下可用的所有Mercurial存儲庫。
    2. 選擇標(biāo)簽或修訂選項并然后選擇標(biāo)簽或指定要合并當(dāng)前工作目錄的哈希值或修訂號。要復(fù)制哈希,請打開版本控制工具窗口的“日志”選項卡,選擇相關(guān)的分支和修訂,然后在選擇的上下文菜單中選擇“復(fù)制哈?!?。
  4. 解決沖突。只要發(fā)生沖突,“文件合并沖突”對話框?qū)⒋蜷_,并顯示沖突文件列表。使用對話框的控件來解決問題:
    • 要保留當(dāng)前工作目錄的版本,請單擊“Accept Yours”。
    • 要保留要合并的分支的版本,請單擊“Accept Theirs”。
    • 要手動解決沖突,單擊““Merge””并使用沖突解決工具,如解決沖突中所述。

    如果在合并過程中沒有沖突,則操作默默通過,合并日志顯示在版本控制工具窗口中。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號