當我修改了我的當前分支并簽出到另一個分支時,git警告我我沒有隱藏或提交失敗,只有當兩個分支之間存在沖突時。
我怎樣才能讓 git 在我結帳之前總是警告我檔案尚未提交?
uj5u.com熱心網友回復:
正如Useless 在評論中所說,您將需要撰寫自己的小程式(例如,幾行 shell 腳本或別名)來執行此操作。Git 的“允許切換修改的檔案”被認為是一個特性,而不是一個錯誤,它特別允許在您開始作業并決定它應該成為它自己的分支的情況下隨時創建一個新的分支名稱。
該git-core庫包含一個source名為的-able shell 檔案git-sh-setup,該檔案提供了一個名為 的函式require_clean_work_tree,因此您的備用程式(您將使用它代替 git checkoutor git switch)可能會以:
#! /bin/sh
. git-sh-setup
# adjust my-checkout name as desired
require_clean_work_tree my-checkout "stash or commit your changes before using my-checkout"
但是請注意,成功 git checkout的或在索引和/或作業樹git switch中攜帶修改會產生顯示攜帶修改的樣式輸出。您可以簡單地或回傳到您剛才所在的原始分支名稱(或分離的 HEAD)。在一些罕見的極端情況下,您會在此程序中丟失一些資訊,但在實踐中您不太可能遇到這些情況。有關血腥細節,請參閱Checkout another branch when there are uncommitted changes on the current branch。git statusgit checkout -git switch -
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/480920.html
下一篇:簽出壓縮提交之一
