使用 Git 面板管理來源控制 - AWS Cloud9

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Git 面板管理來源控制

AWS Cloud9 的 Git 面板擴充功能提供了便利的使用者界面,可用於存取核心與進階的 Git 命令。

本節將示範如何存取主要 Git 功能以管理來源控制。這些程序的重點在於使用Git 面板選單,針對您的儲存庫及其內容執行 Git 命令。

初始化與複製 Git 儲存庫的界面選項

您也可以在 Git 面板搜尋方塊中輸入名稱,藉此存取任何支援的 Git 命令:

初始化與複製 Git 儲存庫的界面選項

您也可以檢視您在與 Git 面板界面互動時實際執行的 Git 命令。若要檢視命令列活動,請移至 Git panel (Git 面板) 選單,然後選擇 Show Git Output (顯示 Git 輸出)。

檢視 Git 命令輸出

初始化或複製 Git 儲存庫

Git 儲存庫包含專案從頭到尾的完整歷史記錄。儲存庫由專案內容的所有快照組成,這些快照是您每次將暫存檔案遞交該儲存庫時經由系統所擷取。

Git 面板支援兩種取得 Git 儲存庫的方式:

  • 將現有目錄初始化為 Git 儲存庫。

  • 將現有的儲存庫複製到本機目錄。

初始化與複製 Git 儲存庫的界面選項
注意

如果您尚未將 Git 儲存庫新增至環境中的工作空間資料夾,才能使用初始化或複製儲存庫的界面選項。如果您已經有儲存庫的工作目錄,Git 面板視窗會顯示工作目錄和臨時區域的狀態。Git panel (Git 面板) 選單也可用來存取針對儲存庫執行的 Git 命令。

如何初始化或複製儲存庫

  1. 如果 Git 面板還未啟用,請選擇 Window (視窗)、Source Control (來源控制),然後選擇 Git 圖示,即可存取面板。

    注意

    您也可以使用鍵盤快速鍵 Ctrl + Shift + G 開啟 Git 面板。

  2. 選擇要初始化新的儲存庫還是複製現有的儲存庫。

    Initialize a repository
    • 在 Git 面板中,選擇 Initialize Repository (初始化儲存庫)。

    • 接下來,選擇要將 Git 儲存庫初始化的工作空間資料夾。您可以輸入資料夾的路徑、選擇路徑,或在對話方塊中選擇資料夾。

    • 如果您使用對話方塊,請選取目的地資料夾並選擇 Initialize Repository (初始化儲存庫)。

    為 Git 儲存庫選取工作空間資料夾

    在您初始化所選資料夾的 Git 儲存庫之後,Git 面板會顯示該資料夾中尚未追蹤但隨時可新增至 Git 臨時區域的現有檔案。

    為 Git 儲存庫選取工作空間資料夾
    Clone a repository
    • 在 Git 面板視窗中,選擇 Clone Repository (複製儲存庫)。

    • 接下來,請輸入要複製的遠端儲存庫 URL (例如 https://github.com/my-own-repo/my-repo-project-name.git,代表複製在 GitHub 上託管的儲存庫),然後按 Return (傳回)。

    • 在顯示的對話方塊中,為複製的儲存庫選取工作空間資料夾,然後選擇 Select Repository Location (選取儲存庫位置)。

    注意

    如果您存取的是在外部網站 (例如 GitHub) 託管的儲存庫,您也必須輸入網站的登入憑證,才能完成此程序。

    複製所選資料夾的遠端儲存庫後,您可以執行 git pull 命令使本機儲存庫與遠端儲存庫中的最新更新進行同步。如需更多詳細資訊,請參閱 使用遠端儲存庫

暫存和遞交檔案

取得 Git 儲存庫之後,您就可以使用兩步驟程序來填入內容:

  1. 將未追蹤和最近修改的內容新增至臨時區域。

  2. 將臨時區域中的檔案遞交至工作目錄。

重要

您未必會將工作目錄中的每個檔案都遞交到儲存庫。舉例來說,您也許不太可能會將執行時間產生的檔案新增到專案的儲存庫中。透過 Git 面板,您就可以將要忽略的檔案新增至 .gitignore 檔案中的清單,以便標記這些檔案。

若要更新 .gitignore 的清單,請以滑鼠右鍵按一下尚未新增至臨時區域的檔案,然後選取 Add File to .gitignore (將檔案新增到 .gitignore)。IDE 會開啟 .gitignore 檔案,而所選檔案的名稱會新增至忽略檔案清單。

如需了解如何在 .gitignore 使用模式比對來排除檔案類型,請參閱 git-scm.com 網站中的相關參考資料

Stage files

未追蹤的檔案 (標記為 "U") 和未新增至暫存區域的已修改檔案 (標示為 "M") 會列在 Git 面板窗格的 Changes (變更) 下。

Git 儲存庫工作空間資料夾中尚未追蹤的內容

使用 Git 面板界面,您可以將特定檔案或所有未追蹤與修改的檔案新增至臨時區域:

  • 特定檔案:暫停在檔案上,然後選擇 + 以便新增到臨時區域。或者,在檔案上按一下滑鼠右鍵,然後選擇 Stage Changes (暫存變更)。

  • 所有檔案:前往 Git panel (Git 面板) 選單,然後選擇 Stage All Changes (暫存所有變更)。

新增至儲存庫索引的檔案會列在 Staged Changes (已暫存的變更) 中。之前未追踪的檔案會標記為 "A",表示檔案已暫存。

Git 儲存庫工作空間資料夾中的暫存內容
注意

您也可以取消暫存特定變更或所有變更。如果只有一個檔案,請暫停在該檔案上,然後選擇 -。或者,按一下滑鼠右鍵,然後選擇 Unstage Changes (取消暫存變更)。若要取消暫存所有變更,請前往 Git panel (Git 面板) 選單,然後選擇 Unstage All Changes (取消暫存所有變更)。

Commit files

你可以使用 Git 的 commit 命令在儲存庫中將暫存檔案擷取為永久快照。使用 Git 面板界面,您可以選擇要遞交的檔案:

  • 遞交臨時區域中的檔案:前往 Git panel (Git 面板) 選單,然後選擇 Commit (遞交) 或 Commit Staged (遞交暫存檔案)。

  • 遞交工作目錄中的所有檔案:前往 Git panel (Git 面板) 選單,然後選擇 Commit All (全部遞交)。(此選項會使用 git add 將檔案新增至臨時區域,然後再呼叫 git commit。)

注意

您也可以在透過 Git 面板遞交檔案時使用 amendsigned-off 選項。amend 選項會修改最近遞交檔案的遞交訊息。sign-off 選項可以在 Git 日誌中識別執行遞交的人員。

您也可以前往 Git panel (Git 面板) 選單並選擇 Undo Last Commit (復原上次的遞交),藉此還原遞交檔案。

檢視不同的檔案版本

您可以比較檔案在經過暫存或遞交後的修改版本。

  • 列於 Changes (變更) 之下的檔案:選擇「M」以檢視工作目錄中的版本與上次暫存或遞交至儲存庫的版本差異。

  • 列於 Staged Changes (暫存的變更) 之下的檔案:選擇「M」以檢視臨時區域中的版本與上次遞交至儲存庫的版本差異。

選擇「M」之後,IDE 視窗會顯示兩個檔案版本之間的差異。一側會顯示儲存庫中目前追蹤的版本。另一側則會顯示尚未遞交的修改版本。

在 Git 儲存庫中區分經版本控制的內容

使用分支

Git 允許您在有別於儲存庫主分支的分支中使用新功能,因此大幅改進了工作流程的管理。您可以在多個分支之間流暢切換,同時確保您在主分支中一律擁有隨時可建置的原始程式碼。

建立分支

建立分支時必須為分支命名並選取其起點。

  1. Git panel (Git 面板) 選單中,選擇 Checkout to (簽出至)。或者,您也可以在 Git 面板底部選擇目前顯示的分支名稱。

    選取目前的 Git 分支
  2. 選擇建立新分支的選項:

    • Create new branch (建立新分支):從目前的分支上次遞交的位置建立新分支。

    • Create new branch from (選擇建立新分支的位置):從您在下個畫面選取的分支上次遞交的位置建立新分支。

  3. 輸入新分支的名稱。

  4. 如果您要將特定分支指定為分支起點,請從清單中選取分支。

切換到新分支之後,查看 Git 面板底部即可看到目前分支的名稱。

注意

如果您使用遠端儲存庫,publish the new branch (發佈新分支) 到上游遠端儲存庫,即可允許其他人存取您的內容。

切換分支

使用 Git 管理來源控制的其中一個主要優點,就是切換分支時,也可以在不同的專案之間切換。

重要

如果目前的分支還有檔案尚未遞交到儲存庫,就無法切換分支。您必須先清除工作目錄,方法是遞交隱藏工作。

  1. 在 Git 面板底部選擇目前分支的名稱。或者,前往 Git panel (Git 面板),然後選擇 Checkout to (簽出至)。

  2. 從顯示的清單中選擇分支。

切換之後,儲存庫的工作目錄會更新為最近遞交至所選分支的檔案版本。

合併分支

在您使用完特定分支中的功能之後,通常會想要將變更整合到主要專案中。透過 Git,您就可將將某個分支 (例如功能分支) 合併到其他分支 (通常是儲存庫的主分支或預設分支),藉此促成上述整合。

  1. 若要選取想要合併到其他分支的分支,請前往 Git panel (Git 面板) 選單,然後選擇 Checkout to (簽出至)。

    或者,在 Git 面板底部選擇目前分支的名稱。

  2. 從顯示的清單中,選擇要當作切換目標的分支。

  3. 在 Git 面板的 Search (搜尋) 方塊中,輸入「merge」(合併)。

    選擇顯示在 Commands (命令) 清單底下的 Git: Merge Branch

    尋找合併命令
  4. 從顯示的清單中,選擇要合併到目標分支中的分支。

    如果合併順利完成,沒有發生衝突,Git 面板界面會重新整理,顯示含有已合併變更的目標分支。

合併分支時,您可能會遇到對相同內容做出不相容變更造成的合併衝突。如果發生這種情況,系統會警告您必須解決衝突才能遞交變更。

您可以使用 IDE 的程式碼編輯器視窗來識別兩個分支中的衝突內容,然後做出變更來解決差異問題。

用於解決合併衝突的 IDE 視窗

使用遠端儲存庫

託管在網際網路或網路上的遠端儲存庫可讓團隊成員分享他們針對本機職責所做的變更,藉此促進協作。透過上傳和下載資料的 Git 命令,您可以確保「下游」(本機) 儲存庫的內容能與「上游」(遠端) 儲存庫的內容同步。

將分支發佈到遠端儲存庫

為本機儲存庫建立分支後,它會成為您的私有儲存庫,且除非您推送到「上游」的遠端儲存庫,否則協作者無法存取。

  1. 若要發布目前的分支,請前往 Git panel (Git 面板) 選單,然後選擇 Publish Branch (發佈分支)。或者,在位於 Git 面板底部按一下分支名稱旁的雲朵符號。

    將分支發佈到遠端儲存庫的選項
  2. 如有必要,請輸入您的登入憑證,以存取遠端儲存庫。

如果分支成功發佈至遠端儲存庫,Git 面板底部的分支名稱旁會顯示同步處理符號。選擇此符號可同步本機和遠端儲存庫的內容。

同步本機和遠端分支的選項

在本機和遠端儲存庫之間推送和提取內容

使用 Git 協作共用專案時,通常會先從遠端儲存庫將其他團隊成員最近的變更提取到您的本機儲存庫中。在您將變更遞交到本機儲存庫後,您會將變更推送到遠端儲存庫,以便讓團隊其他人存取。這些動作是由 git pullgit push 命令來執行。

注意

將變更推送至大多數託管儲存庫 (例如 GitHub 上的儲存庫),以及從中提取變更時,您需要輸入登入憑證。

Pull changes from remote

透過 Git 面板界面使用 git pull 命令,您就可以將本機儲存庫更新為遞交至遠端儲存庫分支的最新變更。

  1. Git panel (Git 面板) 選單中,選擇 Checkout to (簽出至)。

  2. 在分支清單中,選擇您要將變更提取至當中的本機分支。

  3. 接著,前往 Git panel (Git 面板) 選單並選擇 Pull from (提取來源)。

  4. 選擇遠端儲存庫,然後從中選擇要提取變更的分支。

完成提取後,您就可以存取從工作目錄的遠端儲存庫中擷取的檔案。修改檔案後,您接著就可以將變更推送至遠端分支。

Push changes to remote

透過 Git 面板界面使用 git push 命令,您就可以將遠端儲存庫更新為在本機儲存庫指定分支中所做的最新變更。

  1. Git panel (Git 面板) 選單中,選擇 Checkout to (簽出至)。

  2. 在分支清單中,選擇您要當作推送變更來源的本機分支。

  3. 接著,前往 Git panel (Git 面板) 選單並選擇 Push to (推送到)。

  4. 選擇遠端儲存庫,然後從中選擇要將變更推送到其中的分支。

執行推送後,其他團隊成員就可以將變更提取到自己的本機儲存庫副本來存取變更。

隱藏和擷取檔案

使用 Git 的隱藏功能,您不必先遞交暫存或修改檔案就可以切換分支。隱藏功能會擷取工作目錄和臨時區域的目前狀態,然後儲存以供日後使用。如果您在處理的內容尚未完成,且需要立即切換分支,此功能就非常實用。

隱藏工作
  1. 若要隱藏工作目錄的目前狀態,請前往 Git panel (Git 面板) 選單並選擇以下其中一個選項:

    • Stash (隱藏):工作目錄中所有已修改或暫存的檔案會新增至隱藏項目。這個動作不會新增未追蹤的檔案。

    • Stash (include Untracked) (隱藏 (包括未追蹤)):工作目錄中的所有檔案 (包括未追蹤的檔案) 都會新增至隱藏項目。

  2. 按需要而輸入訊息,有助您識別隱藏項目,以便日後擷取。

隱藏後,Git 面板界面會重新整理,顯示已清除的工作目錄。

擷取儲存庫
  1. 若要擷取隱藏項目並套用到工作目錄,請前往 Git panel (Git 面板) 選單並選擇以下其中一個選項:

    • Apply Stash (套用隱藏項目):將所選隱藏項目套用到工作目錄,並保留隱藏項目供日後使用。

    • Pop Stash (快顯隱藏項目):將所選隱藏項目套用到工作目錄,並從隱藏堆疊中刪除隱藏項目。

    注意

    您也可以選擇套用或快顯最近新增至隱藏堆疊的隱藏項目。

  2. 選取要套用到工作目錄的隱藏項目。

Git 面板界面會重新整理,顯示已套用隱藏項目的工作目錄。