Webサービスやアプリ開発の現場では必須のバージョン管理システム「Git(ギット)」。Gitは、専用のソフトを使えばクリックで直感的に操作することもできますが、いざというときにコマンドが使えると便利です。
前回の第14話では、リモートリポジトリを追加・削除できる「git remote(リモート)」について学びました。
・リモートリポジトリを追加する(このとき呼び名を設定できる)
・リモートリポジトリを削除する
・リモートリポジトリ一覧を表示する
今回の第15話では、Gitの設定を変更できる「git config(コンフィグ)」でエイリアスを設定して、コマンドを省略形で実行できる方法について学びます。このマンガを通して、わかばちゃんと一緒にGitの知識を身につけていきましょう!
コマンドを短縮形で実行。効率アップ!
Gitの設定は「.gitconfig」
Gitの設定は「.gitconfig」という名前のファイルに記述されています。「.gitconfig」の中身をのぞいてみましょう。
このように「.gitconfig」には、以下の情報が書かれているのです。
そして、今回追加するコマンドの短縮形、エイリアスの設定も「.gitconfig」に追記することになります。
「.gitconfig」を開いて編集しよう
「.gitconfig」ファイルを開くには、次のコマンドを実行するか、
黒い画面でファイルを編集することが嫌な人は、次のコマンドを実行して、表示されたファイルをお好みのエディタで開いてください。
2.ファイルが開けたら、次のように[alias]を最後の行に追加して保存しましょう。
[user]
name = wakaba
email = XXXXX@gmail.com
[core]
editor = vim -c \"set fenc=utf-8\"
[grep]
lineNumber = true
[alias]
s = status
このように、短縮形 = 本来のコマンド のように書きます。
3.「.gitconfig」を保存したら、さっそく $ git s と打ち込んでみましょう。
$ git status を実行したときと同じ動作をするはずです!
他のコマンドも短縮してみる
では、他の使用頻度の高いコマンドも短縮形を設定してみます。たとえば、わかばちゃんは次のように設定しました。
■ .bash_profileに追加する内容
まずは「git」というコマンド自体を「g」と省略するために、 .bash_profile を編集します。.bash_profile とは、シェルにbashの状態でログインしたときに読み込まれる設定ファイルです。
.bash_profile が vim で開きます。aキーで編集モードにして、一番下に次のとおりエイリアスを追加します。
書き込めたら、Escキーで編集モードを解除し、「ZZ」と打ち込むことでファイルを保存して終了できます。設定を反映するためにターミナルを再起動します。
■ .gitconfigに追加する内容
s = status
b = branch
c = checkout
a = add
aa = add -A
cm = commit -m
cp = cherry-pick
l = log --graph
実は「git」自体も省略可能です。1文字で実行!
ブランチ一覧を表示するときは $ g b 、ブランチを削除するときは $ g b -D [ブランチ名]
他のブランチに切り替えたいときに $ g c [ブランチ名]
ファイルをステージングするときに $ g a [ファイル名]
変更のあったファイルすべてをステージングするときに $ g aa
これもよく使うコマンドですね。コミットするときに $ g cm “コミットメッセージ”
まとめ
今回は、エイリアスの設定について学びました。
・「.gitconfig」 ファイルを開いて編集する
・エイリアスを設定する
s = status
Gitにはまだまだたくさんのコマンドがあります。
次回は、今回と同じコマンド「git config(コンフィグ)」を使って、使用するユーザー名やメールアドレスをプロジェクトごとに変更する方法を学びましょう。
▼登場キャラクター紹介
▼わかばちゃんが登場する書籍
▼ これまでの「マンガでわかるGit」
第2話「ブランチの概念」
第3話「マージの仕組み」
第4話「コンフリクトの修正」
第5話「git revert」
第6話「git reset 3種類」
第7話「git reflog」
第8話「git switchとgit restore」
第9話「git diff」
第10話「git cherry-pick」
第11話「git stash」
第12話「git grep」
第13話「git blame」
第14話「git remote」
第15話「.gitconfig でコマンドを短縮」
第16話「.gitconfig と .git/config で複数のGitアカウントを使い分ける」
第17話「prune オプション」
第18話「git tag」
第19話「detached HEAD 状態って何?」