gitのすべての削除されたファイルを段階的に除外します
-
27-09-2019 - |
質問
すべてのファイルの削除をステージングしたいです。簡単な方法はありますか?
これをすべての削除のファイルパターンに適用したいと思います。
解決
の出力 git status --porcelain
このようなタスクのワンライナーとスクリプトを構築する素晴らしい方法です。
git status --porcelain | awk '$1 == "D" {print $2}' | xargs git reset HEAD
他のヒント
あなたのパス/ファイル名が返された場合 git status
含むspace
文字、呼び出し awk
スペースを含む(引用された)パス/ファイル名全体を含めるように変更できます。
git status --porcelain|awk '$1 == "D" {print substr($0, index($0,$2))}'|xargs git reset HEAD
他の誰かがPowerShellでGitを使用している場合に備えて、 @Jefromiの優れた答えのPowerShellバージョンがあります。
git status --porcelain | where { $_.StartsWith(" D") } | foreach-object { git reset HEAD $_.replace(" D ", "") }
「ステージングされたファイルを解除する」セクションを参照してください この本で.
所属していません StackOverflow