派遣で働くエンジニアのスキルアップを応援するサイト

PRODUCED BY RECRUIT

第17話 ローカルリポジトリに残ってしまうリモート追跡ブランチを一気に削除する prune オプション【連載】マンガでわかるGit ~コマンド編~

f:id:itstaffing:20201009104923j:plain

Webサービスやアプリ開発の現場では必須のバージョン管理システム「Git(ギット)」。Gitは、専用のソフトを使えばクリックで直感的に操作することもできますが、いざというときにコマンドが使えると便利です。

前回の第16話では、複数のGitアカウントを使い分ける方法について学びました。

・メインで使うアカウントを設定する(グローバル設定)

$ git config --global user.name "wakaba"
$ git config --global user.email. "wakaba@example.com"

・サブで使うアカウントを設定する(リポジトリごとの設定)

$ git config user.name "wakaba2"
$ git config user.email "wakaba2@example.com"

今回の第17話では、すでに消されたリモートリポジトリのブランチを、ローカルリポジトリでも一気に消してくれる「prune(プルーン)」オプションについて学びます。このマンガを通して、わかばちゃんと一緒にGitの知識を身につけていきましょう!

【筆者】湊川 あいさん
【筆者】湊川 あいさん
フリーランスのWebデザイナー・漫画家・イラストレーター。マンガと図解で、技術をわかりやすく伝えることが好き。著書『わかばちゃんと学ぶ Git使い方入門』『わかばちゃんと学ぶ Googleアナリティクス』『わかばちゃんと学ぶ Webサイト制作の基本』『運用ちゃんと学ぶ システム運用の基本』が発売中のほか、マンガでわかるGit・マンガでわかるDocker・マンガでわかるRuby・マンガでわかるScrapbox・マンガでわかるLINE Clova開発・マンガでわかる衛星データ活用といった分野横断的なコンテンツを展開している。

・Amazon著者ページ
・Twitterアカウント

  すでに消されたリモートリポジトリのブランチを、ローカルリポジトリでも根絶やしにしたい    

f:id:itstaffing:20201009104932j:plain
f:id:itstaffing:20201009104943j:plain

  prune オプションの使い方    

prune オプションの使い方は次のとおりです。 いずれのコマンドでも、すでに消されたブランチをローカルリポジトリに反映できます。

$ git fetch --prune
 
$ git remote prune リポジトリ名

  prune オプションを使ってみる   

例として、わかばちゃんのローカルリポジトリから見たブランチ一覧が次のようになっていたとします。

$ git branch -a
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/fix_css
  remotes/origin/fix_images
  remotes/origin/master

ここで、エルマスさんが、マージ済みのブランチ fix_css、fix_image を削除して、それぞれリモートリポジトリに削除を反映するためにプッシュしたとします。

$ git branch -d fix_css
$ git push origin :fix_css
 
$ git branch -d fix_image
$ git push origin :fix_image

この状態では、わかばちゃんのローカルリポジトリには削除が反映されていません。ひとつひとつ消すこともできますが、それでは面倒なので、pruneで一掃してしまいましょう。

$ git fetch --prune

もしくは、次のコマンドでも同様に一掃できます。

$ git remote prune origin

出力結果は次のとおりです。リモート追跡ブランチを消していますね。

f:id:itstaffing:20201009104951j:plain

ちゃんと消せたのか、確認してみましょう。

$ git branch -a
* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/master

見事、リモートリポジトリで消されたブランチをローカルリポジトリでも一気に削除することができました。

  まとめ    

今回は、prune オプションの使い方について学びました。
いずれのコマンドでも、すでに消されたブランチをローカルリポジトリに反映することができます。

$ git fetch --prune
 
$ git remote prune リポジトリ名

Gitにはまだまだたくさんのコマンドがあります。 次回は、コミットにタグをつける方法を学びましょう。

▼登場キャラクター紹介
f:id:itstaffing:20200122103525j:plain

▼わかばちゃんが登場する書籍

▼ これまでの「マンガでわかるGit」

【動画レポート】JavaScriptプログラミング 基本的な考え方とプログラミングの方法

JavaScriptは、ブラウザさえあれば手軽に始められる人気のプログラミング言語。プログラマーへの入門として、あるいはコーダーのステップアップとしても最適です。

今回の動画では、これからJavaScriptを始めてみたい、どのようなものかを知りたいといった入門者の方に向けたもので、実際にコードを書き、動作を確認しながらプログラムの中身を優しく丁寧に解説してくださっています。

■POINT
・JavaScriptの大きな特徴
Webブラウザに表示されているページのHTMLやCSSを、ページを読み込み直すことなしに書き換えることができる。これにより、ユーザーの操作に合わせて瞬時に表示が切り替わるUIを作成することが可能

・HTMLやCSSを書き換える3つの設定
「いつ」書き換えるか、「どこを」書き換えるか、「どう」書き換えるかを設定

【講師プロフィール】
狩野 祐東さん
アメリカ・サンフランシスコでUIデザイン理論を学ぶ。帰国後、会社勤務を経てフリーランス。2016年に株式会社Studio947を設立。Webサイトやアプリケーションのインターフェースデザイン、インタラクティブコンテンツの開発を数多く手がける。各種セミナーや研修講師としても活動中。主な著書に『確かな力が身につくJavaScript「超」入門』『いちばんよくわかるHTML5&CSS3デザインきちんと入門』『スラスラわかるHTML&CSSのきほん』(SBクリエイティブ)『WordPressデザインレシピ集』『HTML5&CSS3デザインレシピ集』(技術評論社)など。

  JavaScriptってどんな言語?    

JavaScriptは、Webブラウザに搭載された、Webブラウザ(に表示されるページ)を操作するためのプログラミング言語です。Webページを構成するHTMLとCSSだけでは、Webページが表示された後から、ページを書き換えるという操作ができません。しかし、それを可能にするのがJavaScriptです。

f:id:itstaffing:20200929112955j:plain
▲JavaScriptでできること

JavaScriptでは、Webブラウザに表示されているページのHTMLやCSSを、ページを読み込み直すことなしに書き換えることができます。狩野さんによれば、これこそがJavaScriptの大きな特徴であり、これによりWebページのUI(ユーザーインターフェイス)を変更することが可能になるそうです。

  JavaScriptでUIを作成する   

さっそく、実際にJavaScriptを使ってHTMLを書き換えてページの表示を切り替えるUIを作成していきます。
今回は、クリックしたら色が変わるボックスを作っていくそうです。実際の手順を紹介する前に、これから作るUIの完成品を紹介してくださいました。

f:id:itstaffing:20200929112918j:plain
▲HTMLファイルをブラウザで開くと、最初は水色のボックスが表示される
 
f:id:itstaffing:20200929112922j:plain
▲ボックスをクリックするとピンク色に変わる

あらかじめ基本的なHTMLとプログラムの動作に関係のないCSSが記述済みのサンプルデータも用意してくださったので、いきなり核心部分から書き進められます。
まずは、ボックスを描くところから書き進めていきます。幅、高さ、色などを指定していきます。

f:id:itstaffing:20200929112925j:plain
▲CSSの部分にボックスを描く記述を追加し、大きさや背景色などを指定する

そして、JavaScriptのプログラムを書いていきます。

f:id:itstaffing:20200929112928j:plain
▲JavaScriptのプログラムは通常、HTMLファイルとは別のファイルに記述し、HTMLファイルから呼び出すかたちで実行するが、今回は一覧できるように<script>タグを使ってHTMLファイル中に記述していくとのこと

ここで、狩野さんからのワンポイントアドバイス。<script>タグでスクリプトをHTMLファイル中に記述する場合は、 </body>の直前に記述するのが一般的なのだそうです。なぜなら、HTMLを読み込み終えていないうちに、スクリプトが実行されて、想定した動作にならないことがあるからだとか。誤動作防止の意味があるのですね。

ここで入力したプログラムは、クリックしたときにブラウザのコンソールに「クリック!」と表示させるというもの。コンソールを表示するには、どのブラウザを使っていてもWindowsでは [F12] キー、Macでは [command] + [option] + [I] キーを押します。

f:id:itstaffing:20200929112932j:plain
▲Webブラウザ(ここではGoogle Chrome)の開発ツールを表示させ、HTMLファイルを読み込み、ボックスをクリックすると、コンソールに「クリック!」と表示される

  HTMLやCSSを書き換えるには    

ここから、今書いたコードの詳しい解説が始まりました。狩野さんの講義は、細かく設定した目標に向け、まず手を動かしてコードを書き、その後、「ここから今のコードの解説です」といって、時間をかけてじっくりとコードの解説してくださる2段階構成になっています。コードを書きながら解説も聞き逃さないようにしなければならないといった忙しさがなく、とても分かりやすいと感じる方も多いのではないでしょうか。

f:id:itstaffing:20200929112934j:plain
▲今書いたコードがどういう意味なのか、何をしているのかをじっくりと解説してくれるので、とても分かりやすい


HTMLやCSSを書き換えるには、「いつ」書き換えるか、「どこを」書き換えるか、「どう」書き換えるかという3つの設定が必要なのだそうです。

この「いつ」をイベントと呼びます。つまり「イベントが発生したときに」ということ。イベントには、「フォームに入力があったとき」とか「ページの読み込みが完了したとき」や「キーボードから入力があったとき」など、いくつかあるのですが、「クリックされたとき」に相当するのが「click」なのだそうです。

そして、このイベントを設定するには「どこに」「何が起こった」のかという要素を設定する必要があるそうです。「どこに」を指定する部分が、次の部分です。

    document.querySelector('セレクタ')

セレクタには、CSSで使うのと同じセレクタをシングルクォート(')でくくり、カッコ内に指定します。
「何が起こった」は、選択した要素にイベントを設定します。プログラムで言えば以下の部分です。

    .addEventListener('イベント名', function(){});

そして、この「どこに」「何が起こった」が決まったら、function()に指定された処理である

    consoe.log('出力したいテキスト')

が実行されます。

  オブジェクトとメソッド    

documentやconsoleは「オブジェクト」と呼ばれているそうです。オブジェクトとはJavaScriptプログラムから操作できる「対象」のことです。

f:id:itstaffing:20200929112937j:plain
▲オブジェクトは操作する対象のこと

そして、対象に対して行う操作のことをメソッドと呼びます。メソッドはオブジェクトごとに多数用意されていて、これらを使い分けることで、やりたいプログラムを作っていくのだそうです。

f:id:itstaffing:20200929112941j:plain
▲メソッドは操作の内容のこと

オブジェクトとメソッドをドット(.)でつなぎます。メソッドは最後にカッコが付くというのが見分けるポイントだそうです。

  クラス属性を書き換える    

次はいよいよボックスの色を変える部分に進みます。

まずはCSSで、背景色だけを指定したスタイル(boxクラスの属性)を追加します。これは、冒頭のデモで見せてくださったピンク色のボックスを表示するためのものです。

f:id:itstaffing:20200929112944j:plain
▲このスタイルを<div class=“box” id=“clickbox”>に適用する(class = “box color”とする)と表示色が変わる

次に、JavaScriptのプログラム部分を以下のように修正します。

f:id:itstaffing:20200929112946j:plain
▲これにより、水色のボックスをクリックするとピンク色に変わるようになる

このままでは、一度ピンク色に変わったボックスを、もう一度クリックしても何も起きません。そこで.addのところを.toggleに変更すると、水色からピンク、ピンクから水色と、繰り返し色が変わるようになります。

このプログラムが何をしているのかについても、狩野さんによる詳しい「解説」の時間が設けられました。

f:id:itstaffing:20200929112950j:plain
▲クリックイベントが発生したときに、クラス属性colorの追加・削除を行っている
 
f:id:itstaffing:20200929112953j:plain
▲event.currentTargetはプロパティclassListを持つ。同プロパティに対してtoggleメソッドを実行することで、(クラスリストに)クラス属性colorの追加・削除を行っている

詳しい解説のおかげで、プログラム内容への理解を深めることができました。次回の動画では、さらに踏み込んだプログラムに挑戦するそうです。

▼動画「JavaScript入門 #1 / 基本的な考え方とプログラミングの方法」
https://www.r-staffing.co.jp/engineer/entry/20200925_1
▼動画「JavaScript入門 #2 / スライドショーを作ってみよう」
https://www.r-staffing.co.jp/engineer/entry/20201030_1

【動画】JavaScript入門 #1 / 基本的な考え方とプログラミングの方法

f:id:itstaffing:20200914101608j:plain

JavaScriptをこれから始めたい、どういうものかを知りたい。といった方を対象に、JavaScriptがどんな言語なのか、どのような動作をするのかを詳しく解説いたします。たとえば、HTMLやCSSを書き換えるときには、3つの設定が必要であることをご存知でしょうか。UIを作るもっとも基本的な操作なので、初心者の方にも、一つひとつわかりやすいよう図解付きで解説しています。また、実際に手を動かせるよう、実習用サンプルデータもご用意しました。次回の動画では、もう一歩すすんだテクニック「Webサイトでよく見かけるUIを作ってみよう」を予定しています。おたのしみに。

実習用サンプルデータ ダウンロード
https://studio947.net/downloads/seminar-js.zip

▼ 視聴する
(動画再生時間:45分)


▼ 内容
・JavaScriptってどんな言語?(0:00:57)
・JavaScriptでUIを作成する(0:04:59)
 クリックしたら色が変わるボックスを作ってみよう(0:06:11)
・解説「HTMLやCSSを書き換えるには」(0:21:07)
 イベントの設定(0:22:00)
 コンソールに出力(0:24:30)
 オブジェクトとメソッド(0:24:51)
・解説「書いたプログラムと動作の概要」(0:36:02)
 UIを作るもっとも基本的な操作(0:37:48)
 オブジェクトとプロパティ(0:42:14)
・終わりに 重要なキーワード(0:43:44)

【講師プロフィール】
狩野 祐東さん
アメリカ・サンフランシスコでUIデザイン理論を学ぶ。帰国後、会社勤務を経てフリーランス。2016年に株式会社Studio947を設立。Webサイトやアプリケーションのインターフェースデザイン、インタラクティブコンテンツの開発を数多く手がける。各種セミナーや研修講師としても活動中。主な著書に『確かな力が身につくJavaScript「超」入門』『いちばんよくわかるHTML5&CSS3デザインきちんと入門』『スラスラわかるHTML&CSSのきほん』(SBクリエイティブ)『WordPressデザインレシピ集』『HTML5&CSS3デザインレシピ集』(技術評論社)など。

※動画内容に関するご質問はお受けしかねますのでご了承ください

▼【動画レポート】JavaScript入門編#1:文章でも細かく解説しています。より詳しく学びたい方は、ぜひご覧ください。
https://www.r-staffing.co.jp/engineer/entry/20201016_1

▼【動画】JavaScript入門#2/スライドショーを作ってみよう
https://www.r-staffing.co.jp/engineer/entry/20201030_1

第16話 Gitユーザー名とメールアドレスをリポジトリごとに変更したい 【連載】マンガでわかるGit ~コマンド編~

f:id:itstaffing:20200904140026j:plain

 

Webサービスやアプリ開発の現場では必須のバージョン管理システム「Git(ギット)」。Gitは、専用のソフトを使えばクリックで直感的に操作することもできますが、いざというときにコマンドが使えると便利です。

前回の第15話では、「.gitconfig(コンフィグ)」 ファイルにエイリアスの設定を追加して、コマンドを省略する方法を学びました。

・「.gitconfig」ファイルを開いて編集する

$ git config --global --edit

・エイリアスを設定する

[alias]
s = status

今回の第16話では、複数のGitアカウントを使い分ける方法について学びます。このマンガを通して、わかばちゃんと一緒にGitの知識を身につけていきましょう! 

【筆者】湊川 あいさん
【筆者】湊川 あいさん
フリーランスのWebデザイナー・漫画家・イラストレーター。マンガと図解で、技術をわかりやすく伝えることが好き。 著書『わかばちゃんと学ぶ Git使い方入門』『わかばちゃんと学ぶ Googleアナリティクス』『わかばちゃんと学ぶ Webサイト制作の基本』『運用ちゃんと学ぶ システム運用の基本』が発売中のほか、マンガでわかるGit・マンガでわかるDocker・マンガでわかるRuby・マンガでわかるScrapbox・マンガでわかるLINE Clova開発・マンガでわかる衛星データ活用といった分野横断的なコンテンツを展開している。

・Amazon著者ページ
・Twitterアカウント

  ユーザー名やメールアドレスを、リポジトリごとに変更したい!

f:id:itstaffing:20200904140029j:plain
f:id:itstaffing:20200904140033j:plain

  リポジトリごとにアカウントを使い分けるには?

「仕事で使っているリポジトリには、本名と会社のメールアドレスでコミットしたい」「でも、個人の趣味で開発しているリポジトリには、ニックネームとGmailでコミットしたい」

Gitを使っていると、このように思うことはありませんか?

これを実現するには、Gitの設定ファイルを編集します。Gitの設定ファイルは、前回の第15話で編集した「~/.gitconfig」の他に、リポジトリごとに存在する「.git/config」があります。

■グローバルの 「~/.gitconfig」 ファイル

・メインで使うアカウントの設定を書きこむ(例:会社用)
・浅い階層での設定なので、全体に反映される

■リポジトリごとの 「.git/config」 ファイル

・サブで使うアカウントの設定を書きこむ(例:個人用)
・深い階層での設定なので、そのリポジトリのみにしか反映されない

ポイントは、ファイルが置いてある階層が異なることです。

  メインで使うアカウントを設定する(グローバル設定)

メインで使いたいユーザー名とメールアドレスを設定しましょう。
次のコマンドで、グローバルの「~/.gitconfig」ファイルに設定を書き込むことができます。

$ git config --global user.name "wakaba"
$ git config --global user.email "wakaba@example.com"

設定できたか、catコマンドで確認しましょう。ファイルをターミナル上で開いて内容を見ることができます。

$ cat  ~/.gitconfig     

次のように、設定が反映されていたらOKです。

[user]
   name = wakaba
   email = wakaba@example.com

  サブで使うアカウントを設定する(リポジトリごとの設定)

次に、サブで使いたいユーザー名とメールアドレスを設定しましょう。まずはサブアカウントを登録したいリポジトリに cd コマンドで移動します。リポジトリの中に入ったら、次のコマンドを実行します。

$ git config user.name "wakaba2"
$ git config user.email "wakaba2@example.com"

設定できたか、catコマンドで確認しましょう。

$ cat .git/config     

次のように、設定が反映されていたらOKです。

[user]
   name = wakaba2
   email = wakaba2@example.com

f:id:itstaffing:20190617145541j:plain
これで、アカウントを間違えてコミットする心配はなくなるな!

  まとめ

今回は、エイリアスの設定について学びました。
・メインで使うアカウントを設定する(グローバル設定)

$ git config --global user.name "wakaba"
$ git config --global user.email "wakaba@example.com"

・サブで使うアカウントを設定する(リポジトリごとの設定)

$ git config user.name "wakaba2"
$ git config user.email "wakaba2@example.com"


Gitにはまだまだたくさんのコマンドがあります。 次回は、リモートリポジトリで消されたブランチを、ローカルリポジトリからも消してくれる「git remote prune」を学びましょう。



▼登場キャラクター紹介
f:id:itstaffing:20200122103525j:plain

▼わかばちゃんが登場する書籍

▼ これまでの「マンガでわかるGit」

特別編集 IBM Watson

f:id:itstaffing:20200827095127j:plain

文書の分析やチャットボットを作るなら、『IBMWatson』が非常に便利なことはご存じでしょうか。無料のアカウントでも充実した機能を利用でき、過去にエンジニアスタイルで行ったハンズオンイベントでは、2時間もしないうちにピザ屋さんの注文受付ですぐに使えそうなチャットボットを自作することができました。実際に手を動かしながら、チャットボットや文書検索の考え方を学んでみませんか。

Pickup

1:使いやすいAI(人工知能)「IBM Watson」を見てみよう! 
★POINT 
・『IBM Watson』とは
・どれだけ手軽?チャットボットを作ってみよう 
・大量の文書を検索したり分析したりする『Discovery』の機能について

2:チャットボットをつくってみよう!使いやすいAI(人工知能)「Watson Assistant」ハンズオン
★POINT 
・IBM Cloudで『Watson Assistant』を立ち上げる
・Intent、Entity、Dialogの概念について
・チャットボットに必要な機能と要望

3:文書を手軽に分析・検索してみよう!使いやすいAI(人工知能)「Watson」ハンズオン
★POINT
・便利な『Watson Discovery』の活用例
・高度な情報検索を実現してくれる、メタ情報について
・AI処理した大量の文書を検索、分析する方法

 

特別編集 ネットワークの基礎知識

f:id:itstaffing:20200819110532j:plain

今回ご紹介する記事は、ネットワークの概念や仕組み、機器の使い方など、はじめに知っておきたい『ネットワークの基礎』についてです。仕組みを理解していなくても普段利用する上では問題ありませんが、エンジニア職の皆さんはじめ、ネットワークに携わる方は、ぜひこれらの基礎知識を身につけて、業務にお役立てください。CCNAについても、初心者向けの勉強法や出題傾向などをご紹介しています。

Pickup

1:ネットワーク機器の基本的な仕組みを理解しよう
【講師】Geneさん
2000年よりメールマガジン、Webサイト「ネットワークのおべんきょしませんか?」を開設。2003年CCIE Routing & Switching取得。2003年8月独立し、ネットワーク技術に関するフリーのインストラクター、テクニカルライターとして活動中。

2:安定したネットワークを作る技術の基礎知識
【講師】増井 敏克さん
増井技術士事務所代表。技術士(情報工学部門)。情報処理技術者試験にも多数合格。ビジネス数学検定1級。著書に『おうちで学べるセキュリティのきほん』などがある。

3:初心者からCCNA合格を目指す!ネットワークの全体像を理解しよう
【講師】林口 裕志さん
ITスクール「システムアーキテクチュアナレッジ」で、主にCCNAやCCNPといったネットワーク系の担当講師を務める。数多くのたとえ話や実際の業務での体験談を織り交ぜながら進める講義は受講する生徒にも好評を得ており、IT業界未経験・PCスキルがゼロに等しい生徒であっても、その分かりやすい説明でCCNA合格を最短距離で導いている。CCNAの講義だけでも年間100名以上の生徒を担当し、その合格率は9割以上を誇る。

4:CCNA改定前の直前準備。ネットワークに必須のルーティング技術、NTP・DHCP・NATの設定についておさらいしよう!
【講師】林口 裕志さん

 

第15話 エイリアスを設定してコマンドを短縮しよう【連載】マンガでわかるGit ~コマンド編~

f:id:itstaffing:20200811152311j:plain

Webサービスやアプリ開発の現場では必須のバージョン管理システム「Git(ギット)」。Gitは、専用のソフトを使えばクリックで直感的に操作することもできますが、いざというときにコマンドが使えると便利です。

前回の第14話では、リモートリポジトリを追加・削除できる「git remote(リモート)」について学びました。

・リモートリポジトリを追加する(このとき呼び名を設定できる)

$ git remote add [リモートリポジトリの呼び名]  [リモートリポジトリのURL]

・リモートリポジトリを削除する

$ git remote rm [リモートリポジトリの呼び名]

・リモートリポジトリ一覧を表示する

$ git remote -v

今回の第15話では、Gitの設定を変更できる「git config(コンフィグ)」でエイリアスを設定して、コマンドを省略形で実行できる方法について学びます。このマンガを通して、わかばちゃんと一緒にGitの知識を身につけていきましょう!

【筆者】湊川 あいさん
【筆者】湊川 あいさん
フリーランスのWebデザイナー・漫画家・イラストレーター。マンガと図解で、技術をわかりやすく伝えることが好き。 著書『わかばちゃんと学ぶ Git使い方入門』『わかばちゃんと学ぶ Googleアナリティクス』『わかばちゃんと学ぶ Webサイト制作の基本』『運用ちゃんと学ぶ システム運用の基本』が発売中のほか、マンガでわかるGit・マンガでわかるDocker・マンガでわかるRuby・マンガでわかるScrapbox・マンガでわかるLINE Clova開発・マンガでわかる衛星データ活用といった分野横断的なコンテンツを展開している。

・Amazon著者ページ
・Twitterアカウント

コマンドを短縮形で実行。効率アップ!

f:id:itstaffing:20200811152314j:plain
f:id:itstaffing:20200811152257j:plain

Gitの設定は「.gitconfig」

Gitの設定は「.gitconfig」という名前のファイルに記述されています。「.gitconfig」の中身をのぞいてみましょう。

f:id:itstaffing:20200811152303j:plain

このように「.gitconfig」には、以下の情報が書かれているのです。

・Gitでコミットしたときに記録されるユーザー名
・Eメールアドレス
・Git上で使うエディタ
第12話で設定した、grepの行番号表示指定

そして、今回追加するコマンドの短縮形、エイリアスの設定も「.gitconfig」に追記することになります。

「.gitconfig」を開いて編集しよう

1.それでは「.gitconfig」にエイリアスの設定を記述していきましょう

「.gitconfig」ファイルを開くには、次のコマンドを実行するか、

$ git config --global --edit

黒い画面でファイルを編集することが嫌な人は、次のコマンドを実行して、表示されたファイルをお好みのエディタで開いてください。

$ open ~/.gitconfig


2.ファイルが開けたら、次のように[alias]を最後の行に追加して保存しましょう。

[user]
          name = wakaba
          email = XXXXX@gmail.com
[core]
          editor = vim -c \"set fenc=utf-8\"
[grep]
          lineNumber = true
[alias]
          s = status

このように、短縮形 = 本来のコマンド のように書きます。

f:id:itstaffing:20190617145538j:plain
ふむふむ。s と 打ったら status を実行するよう、省略するコマンドを定義してるわけだね。
f:id:itstaffing:20190617145541j:plain
そのとおり!


3.「.gitconfig」を保存したら、さっそく $ git s と打ち込んでみましょう。

$ git status を実行したときと同じ動作をするはずです!

f:id:itstaffing:20200811152300j:plain


f:id:itstaffing:20190617145538j:plain
わぁ、すごい! $ git status って使用頻度の高いコマンドだから、毎回 status と打つのが面倒だったけど、エイリアスを設定すれば「s」一文字で済むなんて!
f:id:itstaffing:20190617145541j:plain
便利だろう? $ git status 以外の Git コマンドも省略したくなってきたんじゃないか?

他のコマンドも短縮してみる

では、他の使用頻度の高いコマンドも短縮形を設定してみます。たとえば、わかばちゃんは次のように設定しました。

f:id:itstaffing:20190617145538j:plain
よく使うコマンドのエイリアスを、自分なりに設定してみたよ。参考にしてみてね!

■ .bash_profileに追加する内容

まずは「git」というコマンド自体を「g」と省略するために、 .bash_profile を編集します。.bash_profile とは、シェルにbashの状態でログインしたときに読み込まれる設定ファイルです。

$ vim ~/.bash_profile

.bash_profile が vim で開きます。aキーで編集モードにして、一番下に次のとおりエイリアスを追加します。

alias g='git'

書き込めたら、Escキーで編集モードを解除し、「ZZ」と打ち込むことでファイルを保存して終了できます。設定を反映するためにターミナルを再起動します。

■ .gitconfigに追加する内容

[alias]
      s = status
      b = branch
      c = checkout
      a = add
      aa = add -A
      cm = commit -m
      cp = cherry-pick
      l = log --graph


git
実は「git」自体も省略可能です。1文字で実行!

branch
ブランチ一覧を表示するときは $ g b 、ブランチを削除するときは $ g b -D [ブランチ名]

checkout
他のブランチに切り替えたいときに $ g c [ブランチ名]

add
ファイルをステージングするときに $ g a [ファイル名]

add -A
変更のあったファイルすべてをステージングするときに $ g aa

commit -m
これもよく使うコマンドですね。コミットするときに $ g cm “コミットメッセージ”

cherry-pick
第10話で学んだコマンドですね。$ g cp [コミットID]

log --graph
第1話で学んだコマンドですね。コミットログを視覚的に表示したいときに $ g l


f:id:itstaffing:20190617145541j:plain
git status を「s」と省略する人もいれば「st」と省略する人もいるぞ。すべては好みだから、自分が使いやすいようにカスタマイズしてくれたまえ。

まとめ

今回は、エイリアスの設定について学びました。

・「.gitconfig」 ファイルを開いて編集する

$ git config --global --edit

・エイリアスを設定する

[alias]
s = status

Gitにはまだまだたくさんのコマンドがあります。
次回は、今回と同じコマンド「git config(コンフィグ)」を使って、使用するユーザー名やメールアドレスをプロジェクトごとに変更する方法を学びましょう。



▼登場キャラクター紹介
f:id:itstaffing:20200122103525j:plain

▼わかばちゃんが登場する書籍

▼ これまでの「マンガでわかるGit」