有沒有辦法僅根據修改型別來暫存或取消暫存 ( git add/ git rm) 檔案?
喜歡 :
- 僅添加/rm 已洗掉的檔案
- 僅添加/rm 新檔案
- 僅添加/rm 修改過的檔案
- 僅添加/rm 重命名的檔案
uj5u.com熱心網友回復:
根據您可以執行的其他鏈接答案(在 bash 中)
git diff --name-only --diff-filter=D | xargs git add
例如只添加已洗掉的檔案。
您可以使用其它比較過濾器選項修改,新的,重命名的檔案等等。當然,你可以換出git add對git reset等
--diff-filter=[ACDMRTUXB*]僅選擇以下檔案
A添加C已復制D已洗掉M修改的R重命名T改變他們的型別(模式)U未合并X未知B他們的配對已經破裂*全有或全無可以使用過濾器字符的任何組合。
uj5u.com熱心網友回復:
Steven Fontanella給出了大部分答案:git diff --diff-filter將允許您列出已被 git 跟蹤或已被git add編輯的檔案。
要列出磁盤上但尚未添加的檔案,您需要使用git ls-files:
git ls-files --exclude-standard -o
此外,對于檔案git檢測到重命名的情況,您將需要處理 git diff 的特定輸出,或者使用該--no-renames選項將此類檔案列為洗掉 添加檔案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/372633.html
