Mac
Git

[macOS向け] gitのクライアントはGitUpがいいぞ。

いろいろ使ってみたけどGitUp、やめられませんでした。

Macbookをスタバで開いてはプロジェクトをGitで管理する機会の多いであろう諸兄・諸姉のために、独断でイケてるなと思ったgitのGUIクライアントについて紹介したい。その名もGitUp。

GitUp : http://gitup.co/

GitUpとは

GitUpはmacOS用に開発されたgitのGUIクライアントである。
公式ホームページに、

Work quickly, safely, and without headaches.

とあるように、確かに使っている間は頭痛がしない気がする。大きな特徴としては、謳い文句の通り、 早い

ざっくりした使い方

コミットを参照する。

ここでは、openFrameworks (https://openFrameworks.cc) のgithubプロジェクトを例にとって説明する。
既存のローカルリポジトリをGitUpで開くと、このような画面が出てくる

スクリーンショット 2018-05-24 20.21.03.png

おぉ、なんかもうすでに早い気がする。この状態で矢印キーを押すと、ログのツリーのノードを辿れる(青い吹き出しが出てくる。)

ここでスペースキーを押すと、

スクリーンショット 2018-05-24 20.24.16.png

そのコミットの変更点をひと目で見ることができる。矢印キーでコミットファイルを行き来できる。早い。左上のくの字のボタンをクリックすると、そのブランチを前後にたどることができる。Escキーでもとの画面に戻れる。

ブランチを切りたいときは、Bキーを押すだけで、

スクリーンショット 2018-05-24 20.26.55.png

名前何にする?と聞かれるので適当に打つと

スクリーンショット 2018-05-24 20.29.05.png

ブランチが新しくチェックアウトされているのがわかる。

変更をコミットする。

Readme.mdにちょっと失礼して、変更を加えて、Cmd+2でCommit Historyを見ることができる。(ウィンドウ上の3つのビューはCmd+{1,2,3}でそれぞれ切り替えができる。

スクリーンショット 2018-05-24 20.31.49.png

変更点のdiffを見ることができる。変更点をステージングするときは、この状態でEnterを押すだけ。

スクリーンショット 2018-05-24 20.33.01.png

Indexに変更点がステージングされた。(部分的にコミットしたい場合は、右側のコードで対象の行をドラッグして選択したあとにEnterでOK。)早い

コミットメッセージは下の大きなボックスに書き込みすることができる。Working Directory, Index, Commit messageはTabキーでさくさく行き来することができる。

スクリーンショット 2018-05-24 20.40.27.png

下のCommitボタンを押すか、option+Enterでコミットできる。Cmd+1で、コミットが進んでいることを確認できる。

RemoteブランチにPushする。

Cmd+shift+Pで直接Pushできる(リポジトリに権限がないのでこの例では無理)。ここまでマウスフリーでブランチ作成・変更点のステージング・コミット・Pushまでできてしまった。

Pullする。

Cmd+Pでそのブランチの更新をPullできる。

歴史をたどる。

Cmd+1でMapビュー(最初の画面)に戻り、左下にあるShowから、Remote Branch Tips (またはCmd+shift+R)を選択すると、Remoteブランチを表示することができる。
ここで思いっきり下にスクロールすると・・・・

スクリーンショット 2018-05-24 20.46.33.png

なんということでしょう、6年前のコミットログと圧巻のツリーを一望することができる。もちろん方向キーでたどり、スペースキーでログを確認できる。これだけのブランチを表示していてもめちゃくちゃ軽い。 ちなみに、青い吹き出しが出ている状態でEnterキーを押すとそこにチェックアウトできる。6年前までのコミットまでは流石に20秒ぐらいかかったが、直前などのコミットまでであれば一瞬である。

ターミナルから起動したい

メニューバーから Gitup>Install command toolで、ターミナルからGitUpを起動できるようになる。対象のgitリポジトリ下で、

$(openFrameworks/) gitup

とするだけでgitupが一瞬で立ち上がる。GitUpのマウスフリー環境の完成である。

 他のエディタと比較してみて

これまでに

  • Github Desktop
  • SourceTree

を使っていたが、GitUpを使い始めてからは一度も帰ってきていない。どちらもショートカットキーも充実しているし機能的ではあるのだが、Githubのほうがとにかくシンプルである。故に、なんとも言えない使いやすさを感じてしまった。(ここで言うのも申し訳ないのだが、どちらもフルに機能を使いきっているわけではないですm(_ _)m)

Github Desktopとの比較

かなり優秀なGitクライアントで、特にこのアプリからPRを作成できたりもする。チュートリアルも充実していて、初めてGitクライアントを使う人にとっては優しいアプリと言える。私も最初はずいぶんお世話になっていた。しかしながらブランチ・コミットの切り替えが結構めんどくさいのである。ブランチ切り替え用のボタンまでマウスを運んでブランチを選んで・・・という作業が若干面倒くさいのである。PR作成機能に関しては、正直Webインタフェースのほうが充実しているのでそっちを使ってしまう。
スクリーンショット 2018-05-24 21.03.48.png

SourceTreeとの比較

SourceTreeは機能性抜群で、ブランチごとのコミットログも簡単に一覧できるインタフェースを備えているが、特殊な機能があまりにも多すぎる気がする。フル活用すれば活躍の幅は広がると思われるが、その前にGitUpに惚れてしまったため、その機会も今の所無いのである(完全に個人的意見)。ただ明らかにビューの種類が多く複雑で、過去のログを見ようとするとカクついたりもする。

スクリーンショット 2018-05-24 21.06.25.png

早いとやっぱり気持ちいい。

快適な作業環境にはさくさく動くインタフェースが欠かせないものである。思考と作業、視覚フィードバックの間の時間間隔が少しでも縮むだけで、作業の気持ちよさはぐっと向上する。特にソフトウェア開発に慣れてくるとマウスをも使いたくなくなり、なるべくキーボード上でインタフェースを行き来したくなるが、GitUpはそういった作業環境をよく考えて作られてあるように思う。必要な作業がサクサクできるようにあらゆるムダを省いたシンプルなgitクライアントだと思うので、是非試してもらいたい。

(なお、このクライアントでもこういうことできるよというのがあれば是非コメントを寄せていただきたいですm(_ _)m)