イノベーション エンジニアブログ


株式会社イノベーションのエンジニアたちの技術系ブログです。ITトレンド・List Finderの開発をベースに、業務外での技術研究などもブログとして発信していってます!


このエントリーをはてなブックマークに追加

Gitを覚えたての新人がよく使うコマンドまとめ

こんにちは!両腕を広げると192cmになる新人エンジニアの小柳津です。

今週、会社帰りにVRゲームを体験してきました!
いやぁ〜世の中でVRについて大盛り上がりしているだけあって、本当にすごいですね!!
ホラーゲームでは人目もはばからず大声で叫んでしまったり、スキーのゲームでは急斜面を下り、ものすごい風を感じた気になったりしました。

簡単に手に入るようになれば、おそらくVRの世界から中々戻ってこられない人が続出するような気がします…​

最近では様々なVR体験イベントがあると思うので、ぜひ一度行って見てください!とても楽しいですよ!

IMG 7240.JPG

ちなみに画像は先日MINTIAの記事を投稿した先輩エンジニアです。

今回は鉄は熱いうちに鍛えよと言わんばかりにGitを覚えたての新人が軽い解説を交えながら、よく使うコマンドを紹介していきます。

Gitコマンドの紹介

それでは私がよく使うGitのコマンドを紹介します。

  • 作業ディレクトリからステージングエリアへと移動させる

$	git add <path>
$	git add .

作業ディレクトリで修正したファイルなどをステージングエリアへと移動させるコマンドはgit addを使います。ファイル単体で移動させたい時はファイルやディレクトリをパス指定します。
この中でも特によく使うのがgit add .です。修正を加えたファイルを全て自動で指定し、ステージングエリアへと移動させてくれます。

  • ファイルの差分を確認する

$	git diff <path>
$	git diff <branch_name>

ファイルを編集した時に、「そういやあの修正できてったっけ?」「どこをどんなふうに修正したかな?」と思うことがありますよね。
そんな時はgit diff <path>で修正したファイルなど指定すると修正した内容を手軽に確認できます。
またgit diff <branch_name>でブランチ名を指定し、現在いるブランチと指定したブランチを比較して、どのファイルのどこに差分があるのかが分かります。
修正の内容が消去された内容は、追記された内容はで分かりやすく示されるため、どんな修正をしたのか一発で分かります。Gitってすごい!

  • ログを閲覧する

$	git log
$	git log --oneline
$	git log -p
$	git log --stat

コミットの履歴(ログ)を閲覧するにはgit logを使います。
このコマンドを使うと以下のような情報を取得できます。

  1. ハッシュ値

  2. いつコミットされたか

  3. 誰がコミットしたか

  4. コミットメッセージ

また、コミットの回数が多くなるとログも必然的に多くなります。まとめてログを見たい!という時にはgit log --onelineを使うことで、ログ情報を簡略化してくれます。
逆に、もっと細かくログが見たいなぁという場合はgit log -pを使うことで先ほど紹介したgit diffで得られる情報をログに追加してくれます。
また、git log --statではログと変更されたファイルと何行変更があったかを表示してくれます。
情報量で言えばgit log --oneline < git log < git log --stat < git log -p といったような順番になります。

  • コミット

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

ステージングエリアからリポジトリに移動させるのにはgit commit、このコマンドの後コミットメッセージを求められ、エディターに移動します。git addしてgit commitしてコミットメッセージ…​Gitってまどろっこしい!
そんな方にはgit commit -m "コミットメッセージ"がオススメです。直接コミットメッセージを打ち込むので、エディターに移動はスキップしてくれます。

*過去のバージョンに遡る

$	git reset --hard <hash>
$	git reset --hard HEAD
$	git reset --hard HEAD^
$	git reset --hard ORIG_HEAD

過去のバージョンを遡るには上記のgit reset --hard <hash>を使います。git logでログを見るとcommitの文字の横にやたらと長い文字列がありますよね。これはハッシュ値と言われ、これを指定することでこのコミットをして時点の状態に戻ることができます。ちなみにハッシュ値の値は一意であれば良いので大体7-10文字ほどで良いそうです!
git reset --hard HEADはハッシュ値を指定しなくとも、直前のバージョンに戻ることができます。そこからgit reset --hard HEAD^と打てばもう一つ前のバージョンに戻れます。
戻りすぎちゃった…​という場合にはgit reset --hard ORIG_HEADとすれば、一つ進んだバージョンにしてくれます。

  • ブランチの作成

$	git branch <new_branch_name>
$	git checkout -b <new_branch_name>

git branch <new_branch_name>で新しくブランチを作成できるのですが、その後git checkoutするのってめんどくさいですよね。git checkout -b <new_branch_name>ではそんな面倒くさい作業をこれ一回で!!-bというオプションはbranchの略なんでしょうか。覚えやすくて素敵です。

  • エイリアスの設定

$	git config --global alias.[alias_name] [command]
$	git config --global --unset alias.[alias_name]
$	git config

エイリアスとは別名という意味になります。これまで紹介してきたコマンドに別名をつけることができます。例えばgit config --global alias.co commitとし、git coとすればコミットが行えます。Gitで管理しているとコマンドを何回も入力すると思うのですが、ジャンジャン省略して、入力作業を楽にしちゃいましょう!

以上でGitを覚えたての新人がよく使うコマンドのご紹介でした!Gitってホント便利ですね〜
調べている限りではもうここでは紹介しきれないほど様々なオプションがあったりするので、よくあるケースで使えそうな場合は、ぜひ覚えておくと良いでしょう。

今回はここで失礼します。