icon
icon

git commitを使って変更内容をコミットする方法【初心者向け】

初心者向けにgit commitというコマンドを使ってファイルの変更内容をコミットする方法について解説しています。ファイルの変更や追加のコマンドは、開発現場でも役立つ知識になるので、ぜひ今のうちに覚えておきましょう。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

Git(ギット)はとても便利なバージョン管理システムです。

今回は、Gitの使用においても重要なgit commitの使い方について、テックアカデミーのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

複数人で開発業務を行う上では必ず使う知識なので、実際にコマンドを打ちながら慣れていきましょう。

目次

Gitについてそもそもよく分からないという方は、GitHubとは何なのか解説した記事を読むとさらに理解が深まります。

 

また、動画でも解説しています。

テキストよりも動画の方が理解しやすいという場合はぜひご覧ください。

 

大石ゆかり

田島メンター!!git commitって何をしているコマンドなんですか???

田島悠介

git commitはね、ファイルの変更した部分とかを保存しておくコマンドだよ。

 

git commitとは

Gitを使用すれば簡単にファイルの進捗を管理できます。

そのためにファイルの変更や追加などを保存しておく必要があります。

そのためのコマンドがgit commitです。

このコマンドでファイルの変更をGitリポジトリに保存できます。

 

git commitを使用してみよう

それでは実際にgit commitを使用してみましょう。

今回は「sample」というディレクトリの中で、「sample.html」というファイルをコミットしてみましょう。

 

まずは、sampleディレクトリ内で、Gitのリポジトリを初期化します。

git init

 

次に、sampleディレクトリ内でsample.htmlを作成しましょう。

MacやLinuxの場合touchコマンドを使用してファイルの新規作成ができます。

touch sample.html

Windowsの場合:以下のコマンドを使用してファイルの新規作成ができます。

"" > sample.html

 

次に、sample.htmlをステージングエリアに追加するためのコマンドを打ちます。

git add .

ステージングエリアとは変更内容を記録する場所で、「インデックス」とも呼ばれることがあります。

上記のようにgit add .と打ち込むことで、sampleディレクトリ内にあるすべてのファイルをステージングエリアに追加できます。

この時git add ファイル名と打ち込むことで、指定したファイルのみ追加対象にすることもできます。

このステージングエリアへの追加は、コミット前に毎回必要になる操作です。

 

現在の状況を確認するために、git statusと打ち込んでみましょう。

git status

すると以下のように、ステージングエリアにsample.htmlが追加されたことがわかります。

git03_01

 

最後にsample.htmlをコミットします。

以下のように打ってみてください。

git commit -m '最初のコミット'

-m 'メッセージの内容'を末尾に追加することで、コミット時のメッセージを残せます。

 

無事コミットできているか確認するために、git logと打ち込んでみましょう。

git log

すると以下のように、過去にコミットした日時とメッセージが確認できます。

git03_02

このgit log表示は、qキーで終了できます。

 

大石ゆかり

田島メンター!!
git commitをしたときのメッセージを間違えてしまったんですけど、修正する方法ってないですか〜?

田島悠介

それなら git commit –amendを使うと良いよ。

 

[PR] 未経験からWebエンジニアを目指す方法とは

git commit –amendで直前のコミットメッセージを変更する

git commit --amendは、直前のコミットメッセージを変更できるコマンドです。

ファイルをコミットした時に、コミットメッセージが適切でない場合に使用します。

では、sampleディレクトリ内の「sample.html」をコミットしたメッセージを変更してみましょう。

 

先程コミットしたコミットメッセージをgit logで確認すると、以下のように表示されます。

git log

git03_02

「最初のコミット」だけだと、どのような作業を行ったのか分かりませんよね。

このような適当なコミットメッセージだと、今後のプロジェクトが進んだときに作業を詳しく振り返ることができなくなってしまいます。

そこで、git commit --amendを使用して、コミットメッセージを編集していきます。

 

ターミナルでgit commit --amendと打ち込むとエディタが立ち上がり、一番上の行にコミットメッセージが表示されます。

git commit --amend

 

エディタでコミットメッセージを変更し、上書き保存を行います。

そうすることで、コミットメッセージの変更を行えます。

 

今回は以下のようにメッセージを入力し直し、上書き保存を行いましょう。

create sample.html

 

その後、再度git logでコミットメッセージを確認してみてください。

以下のキャプチャ画像のように、上書きされていることがわかります。

git08_02

以上でコミットメッセージを変更できました。

 

git commitのオプション

実際の開発現場では、git commit コマンドは最も多く使うコマンドの1つと言っても過言ではありません。

そのため、いくつかのオプションを覚えておくことで、効率よく開発を進めることが可能になります。

いくつか見ていきましょう。

 

変更したファイルをすべてコミットする

すでにGitに追加済みのファイルで、変更があったものをすべてコミットするには以下のように記述します。

git add -a
git commit

 

上記と同じことを、.を使い1行で表現すると以下の通りです。

git commit .

とてもよく使う書き方なので覚えておきましょう。

 

新規ファイルも含め、すべてコミットする

新規に作成した(Gitに追加していない)ファイルも含め、すべてのファイルをコミットするには以下のように記述します。

git add -A
git commit

 

こちらも、.を使い記述できます。

git add .
git commit

git add -aコマンドとgit add -Aコマンドが紛らわしいので、新規ファイルを追加する場合はgit add.を付ける、と覚えておくと便利ですね。

 

コミットメッセージも指定してコミットする

以下のように記述すると、コミットメッセージを入力するためのエディタが起動します。

git commit

 

-vオプションを指定することで、変更点を表示しながらコミットメッセージを入力するためのエディタを起動、コミットメッセージを入力できます。

また、すでに紹介済みですが、-mオプションを指定することで、エディタを起動することなくコミットメッセージも指定してコミットできます。

git commit -m 'コミットメッセージ'

 

特定のファイルを指定してコミットする

特定のファイルを指定してコミットするには、以下のように記述します。

git commit ファイル名

実際の開発現場では、紛らわしくなってしまうのであまり使いませんが、覚えておくと役に立つかもしれませんね。

 

(参考)間違ったコミットを取り消す

間違ってコミットしてしまった場合はgit resetコマンドを使用します。

ただし、コミットを取り消してしまうことになるので、本当に取り消してよいか、十分注意して利用することが必要です。

 

コミットだけを取り消す場合(ローカルのワークディレクトリの内容は変更しない)

git reset --soft

ローカルのワークディレクトリの内容も含め、コミットを取り消す場合

git reset --hard

直前の間違ったコミットを取り消す場合(HEAD^は、直前のコミットという意味を表す)

git reset --soft HEAD^

 

大石ゆかり

なるほど!オプションをうまく指定することで思い通りにコミットできるんですね!!!

田島悠介

そうだね。git add と git commit は必ず使うコマンドだから、覚えておくといいね♪

大石ゆかり

分かりました♪

 

まとめ

今回はgit commitを使って、変更内容をコミットする方法について解説しました。

git commitは、Gitの基礎的なコマンドで最も使用すると言っても過言ではないコマンドですので、必ず覚えておくようにしましょう。

git commitについて学んだ後は、リモートリポジトリにプッシュするgit pushについての知識も知っておくと良いでしょう。

 

プログラミングを学習中の方へ

これで解説は終了です、お疲れさまでした。

  • つまずかず「効率的に」学びたい
  • 副業や転職後の「現場で使える」知識やスキルを身につけたい

プログラミングを学習していて、このように思ったことはありませんか?

テックアカデミーのWebアプリケーションコースでは、第一線で活躍する「プロのエンジニア」が教えているので、効率的に践的なスキルを完全オンラインでしっかり習得できます。

合格率10%の選考を通過した、選ばれたエンジニアの手厚いサポートを受けながら、あなただけのオリジナルWebアプリケーションを作れます。

まずは一度、無料体験で学習の悩みや今後のキャリアについて話してみて、「現役エンジニアから教わること」を実感してみてください。

時間がない方、深く知ってから体験してみたい方は、今スグ見られる説明動画から先に視聴することをおすすめします!