如何刪除 GitHub 分支?

已發表: 2021-07-27

在不必要的時候銷毀某些東西是強制性的。

它為新事物創造了更多空間,並使我們能夠輕鬆維護其餘事物。 所以,今天我們將探索在 GitHub 中刪除分支的不同方法。

分支就像上帝給開發人員的禮物。 如果您是開發人員,您就會明白我的意思。 如果您熟悉分支的實際用例,您可以跳過下一部分並跳到刪除分支部分。 如果您是git初學者或對分支感到好奇,請繼續閱讀。

什麼是分支?

分支是指向提交的指針。 閱讀不足以理解分支。 我們需要查看分支如何工作才能清楚地理解它們。

我們將通過一些插圖來了解實際的開發人員如何在他們的項目中使用分支。 請注意,插圖中的每個圓圈代表一次提交。

讓我們通過一個簡單的實時場景來看看分支的工作流程。

  • 假設您在一個產品開發團隊工作。
  • 有一天團隊領導走到你面前說:“嘿,我們在產品中遇到了一些錯誤。 你需要修理它們。”
  • 你說,“是的,當然。”
  • 您的 git commits 如下所示。
Git 提交
Git 提交
  • 你在master分支工作嗎?
  • 當然不。 如果您從master分支本身工作,那麼您將來可能會遇到嚴重的問題。 我們將演示它將如何在一段時間內發生。
  • 現在,您已決定從master分支中獲取另一個分支來修復錯誤。 兩個分支現在都指向同一個分支。
新分行
新分行
  • 您開始致力於錯誤修復並進行了 5 次提交。 因此,您的新分支將如下進行。
新提交
新提交
  • 你的新分支指向C8提交,而我們的分支指向C3提交。
  • 現在,令人驚訝的事情發生了。 您的團隊再次引導您並說:“嘿,我們的產品中存在一個需要立即修復的嚴重錯誤。”
  • 呼! 好多啊。
  • 您已經在進行錯誤修復。 現在,有更多的優先級高於以前的優先級。
  • 因此,您必須切換以修復新錯誤。
  • 到現在為止你寫的代碼呢?
  • 完全沒有問題,因為您已經創建了一個新分支來修復以前的錯誤。 到目前為止,您正在工作的所有代碼都將位於錯誤修復分支中。
  • 現在,切換到master分支並創建另一個名為critical-bug-fix 的新分支,並開始處理新的錯誤修復。
另一個新分支
另一個新分支
  • 假設您還沒有為以前的錯誤創建新分支。 你怎麼認為?
  • 您必須刪除為以前的錯誤編寫的所有代碼,然後開始處理新的錯誤。 而且您必須在某個時候為以前的錯誤再次編寫所有代碼。
  • 這正是我們正在談論的問題。
  • 因此,分支正在幫助我們獨立開發代碼。
  • 現在,您已經編寫了一些代碼來修復新錯誤並提交它們。
新分支提交
新分支提交
  • 您已完成修復新錯誤。
  • 現在,您已經切換到之前的 bugs 分支並開始處理它們。

因此,您在分支機構的幫助下非常謹慎地管理事物。 它沒有任何混亂。 如果沒有分支之類的東西,那麼想像一下我們將進入的情況。

因此,關於分支的結論是明確的。 對於像我們這樣的開發人員來說,它們是一個福音。

閒話少說,讓我們看看如何刪除一個分支。

使用 Git 客戶端刪除分支

當我們談論刪除分支時,我們是在本地和遠程刪除它。 所以,當我們兩次刪除同一個分支時不要混淆。 讓我們看看刪除分支的步驟。

  • 打開終端或 cmd 並導航到 git 存儲庫。
  • 使用命令git branch -a查看存儲庫中存在的git branch -a 。 它將顯示本地和遠程分支。
存儲庫分支
存儲庫分支
  • 複製要刪除的分支名稱。 在上述情況下,它是一個
  • 結帳到mastermain或任何其他不是刪除分支的分支。
  • 使用git branch -d branchName在本地刪除分支。 將branchName替換為您的實際分支名稱。
刪除本地分支
刪除本地分支
  • 使用git branch -a命令檢查分支。 您仍然會在遠程中找到已刪除的分支,因為我們沒有在遠程中刪除它。
分行名單
分行名單
  • 要刪除遠程分支,請運行命令git push remoteName -d branchName 。 用適當的名稱替換remoteNamebranchName
刪除遠程分支
刪除遠程分支
  • 有一個快捷命令可以遠程刪除分支。 命令是git push remoteName :branchName

現在,重新檢查分支。 如果您正確執行了上述步驟,則在本地和遠程都沒有找到已刪除的分支。

分行名單
分行名單

如果我們嘗試刪除不存在的分支,我們將收到一條錯誤消息,指出未找到分支。

刪除錯誤
刪除錯誤

而已; 我們已經成功地在本地和遠程刪除了一個分支。

使用 GitHub Web 應用程序執行此操作的方法略有不同。

讓我們來看看它。

使用 Web 刪除分支

前一種方法和這種方法沒有太大區別。 在這裡,我們將使用 GitHub Web 應用程序刪除遠程分支。 我們將刪除本地分支,就像我們在上面的方法中刪除一樣。

讓我們看看如何使用 GitHub Web 應用程序刪除遠程分支。

  • 轉到 GitHub。
  • 登錄到您的帳戶。
  • 導航到要刪除分支的存儲庫。
存儲庫
存儲庫
  • 單擊分支按鈕可查看存儲庫的所有分支。
存儲庫分支
存儲庫分支
  • 您將看到存儲庫的分支。
  • 您還會在最後看到一個刪除圖標。
刪除分支按鈕
刪除分支按鈕
  • 單擊刪除圖標可刪除遠程中的分支。
刪除的分支
刪除的分支
  • 我們可以通過單擊“恢復”按鈕來恢復分支。 在我們刷新或關閉頁面之前,它將一直可用。
恢復按鈕
恢復按鈕

現在,我們已經刪除了遠程中的分支。 轉到本地存儲庫並使用我們在第一種方法中看到的命令刪除分支。

現在,運行命令git branch -a檢查所有分支。

分行名單
分行名單

我們仍然在列表中看到刪除的遠程分支。 那是啥? 我們如何解決? 請參閱以下場景,您將在其中遇到這種類型的工作情況。

假設您在一個團隊中工作。 完成特定任務後,您的團隊負責人刪除了遠程分支。 你怎麼知道的? 有沒有辦法知道遠程刪除的分支?

我們需要同步有關已刪除分支的本地和遠程存儲庫。 有一些命令可以做到這一點。 他們是

git remote prune remoteName
 git fetch -p remoteName

-p是第二個命令中prune的快捷方式。 上述兩個命令中的 prune 選項刪除對遠程的引用。

遠程修剪
遠程修剪
摘梅子
摘梅子

現在,運行命令git branch -a來檢查分支列表。

分行名單
分行名單

您將看到遠程分支未顯示在列表中。 但是,當地分支機構仍然存在。 是啊,就是。 它沒有問題。 您可以保留或刪除它。

因此,請檢查本地中存在的遠程中不存在的分支。 刪除在遠程刪除的本地分支。

你的樹枝現在乾淨了。 你很高興去。

結論

大多數時候,我們將使用終端或 cmd 進行任何 git 操作。 而且很方便。 但這不是強制性的。 歸根結底,這是個人喜好。

無論您使用什麼工具或方法,結果都是一樣的。 選擇您方便的一個並按照它完成任務 - 刪除分支的兩個步驟。 本地和遠程刪除。

接下來,了解如何刪除 GitHub 存儲庫。

快樂發展