この3つのコマンドを1つにまとめる方法はありませんか?
git add .
git commit -a -m "commit" (do not need commit message either)
git push
たまに1文字だけ、CSSのパディングなどを変更することがあります。それでも、変更をプッシュするためには3つのコマンドをすべて書かなければなりません。私がたった一人でプッシュするプロジェクトがたくさんあるので、このコマンドは素晴らしいですね。
ウェイン・ワーナーの疑問には同意するが、これは技術的にはオプションである。
git config alias.acp '! git commit -a -m "commit" && git push'
これは commit
と push
を実行するエイリアスを定義するものです。git acp`として使用してください。このような "shell"エイリアスは常に git リポジトリのルートから実行されることに注意してください。
もうひとつの方法は、プッシュを行うpost-commitフックを書くことです。
そういえば、シェルエイリアスに引数を渡すことは確かにできます。カスタムのコミットメッセージを渡したい場合は、代わりに次のようにします。
git config alias.acp '! acp() { git commit -a -m "$1" && git push ; } ; acp'
(もちろん、今度はコミットメッセージを渡す必要があります。git acp "My message goes here!"`)
あなたは、git が設計されたワークフローを誤解しているのではないでしょうか。(というのも、commit -a
は通常同じ目的を果たすからです。)
通常は次のようにします。
# make some changes
$ git commit -a -m "Changed something"
# make some more changes
$ git commit -a -m "Changed something else"
洗って、すすいで、繰り返して、機能Xを完成させるまで、あるいは停止点に到達するまで、あるいは自分がやったことを他の人に見てもらいたいと思うまで。そして、次のようにします。
$ git push
GitはSVNではありませんが、あなたはそのように使おうとしているようですね。記事の最後にあるリソースこちらが参考になるかもしれません。