Gitコマンドについて調べる【git commit】
git commit
git addにてステージング領域に追加されたファイルをローカルリポジトリにコミットするコマンドです。
$ git commit
git commit
コマンドを実行すると、テキストエディタが表示されます。表示されたテキストエディタにはコミットメッセージを入力します。
- 1行目 : コミットの全体的な説明
- 2行目 : 空白行
- 3行目以降 : コミットの詳細な説明
コミットメッセージの入力は必須なので、何も入力しないまま終了するとcommitはされません。2行目、3行目以降の入力は任意であるため、1行目の全体的な説明のみの入力でもOKです。
オプション
-m
、--message
テキストエディタを起動せず、コマンドで1行のコミットメッセージを入力してcommitすることができます。これはよく使用すると思います。
$ git commit -m '[コミットメッセージ]' $ git commit --message '[コミットメッセージ]'
-a
、--all
-a
をつけると、git add
せずステージング領域に追加していないファイルをaddして、commitします。要するにaddしなくても-a
をつけてcommitすれば自動でaddしてくれるものです。ただ、新規追加されgitの管理内になっていないものはaddされません。(git add -u
と同じ)
$ git commit -a
-m
と組み合わせるとgit add -u
とgit commit
が1行のコマンドできて便利です。
# 変更したファイルをaddしてcommitする $ git commit -a -m '[コミットメッセージ]'
--allow-empty
ファイルを何も変更せずaddしていない状態でもcommitのみ実行することができます。
$ git commit --allow-empty
何が便利かというと、これから何か機能を追加したり修正したりする際に仕様が曖昧なときなどに、とりあえず先にPullRequestを作ってそこで仕様について議論したりしながら開発を進めるということができます。
--amend
amendは「修正する、改める」という意味です。--amend
をつけてcommitすると直前のコミットをやり直すことができます。
# 直前のコミットにREADMEの修正も含めたかったが忘れてしまっていた $ vi README.md # README.mdを修正 $ git add README.md # README.mdをadd $ git commit --amend # --amendをつけてcommitすることで直前のコミットに含めることができる