この抜粋からわかるように、「!」があります。git コマンドの前。ポイントは何ですか?
[alias]
commitx = !git add . && git commit
- https://stackoverflow.com/a/8956546/1354543
エイリアスとコマンド自体が何をしているのかは理解していますが、「!」のポイントは理解していません。git コマンドの前。
この抜粋からわかるように、「!」があります。git コマンドの前。ポイントは何ですか?
[alias]
commitx = !git add . && git commit
- https://stackoverflow.com/a/8956546/1354543
エイリアスとコマンド自体が何をしているのかは理解していますが、「!」のポイントは理解していません。git コマンドの前。
!
「シェルへのコマンドとして以下を実行する」という意味なので、この場合、エイリアスはgit commitx
実行と同等に拡張されますgit add . && git commit
(これはひどいひどい考えです)
受け入れられた回答でカバーされていない重要な側面は!
、シェルコマンドの場合、作業ディレクトリが作業コピーの最上位に設定されていることです。したがって、git commitx
作業コピー内のすべての新規および変更されたファイルをステージングしてからコミットしますが、git add . && git commit
手動で実行すると、現在のディレクトリ内のすべての新規および変更されたファイルをステージングしてからコミットします。