質問

すべてのファイルの削除をステージングしたいです。簡単な方法はありますか?

これをすべての削除のファイルパターンに適用したいと思います。

役に立ちましたか?

解決

の出力 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 ", "") }

「ステージングされたファイルを解除する」セクションを参照してください この本で.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top