Git Client (Sourcetree) のススメ
概要
こんにちは、ラブグラフエンジニアの熊谷です。
今回は Git 管理用のクライアントアプリ「Sourcetree」の魅力を共有したいと思います。よろしくお願いします。
Sourcetree とは?
「Sourcetree」とは、Atlassian社が提供している Git のクライアントアプリです。
自分は主に GitHub のリモートリポジトリと連携して利用しています。(もちろん GitLab や Bitbucket なども利用可能です)
公式サイト: https://www.sourcetreeapp.com/
※今回は、Git や Sourcetree の使い方については解説しませんので、公式サイトや他のブログなどを参考にしてもらえればと思います。
※この記事内でよく CUI, CLI というワード(ほぼ同義)を使っていますが、今回は GUI との比較する記事になっておりますので、 CUI の表記に統一しようと思います。 (筆者も実際口語では、CLI「コマンドライン」と口にすることのほうが多いです)
Sourcetree の魅力
あらゆることが一目でわかりやすい
メインブランチの進捗、手元の Branch 一覧、手元の Stash 一覧が一目でわかります。
何よりGUIの魅力はこれでしょう。
色鮮やかでブランチを作ったり、ブランチをマージしていくのが楽しくなります。
ブランチや Stash が常に見えていることで、不要になったブランチや Stash を早く消して整理しようという意識も生まれるので、手元環境をよりクリーンな状態に保てるようになると思います。
Merge や Reset などをおこなうとき、対象のコミットを見つけやすい
ブランチツリーが見えているので、より簡単に対象となるコミットを見つけやすくなっています。
変更の差分がわかりやすく、細かい変更をおこないやすい
GUIでコードが表示されるので、1行単位のコミットがおこないやすくなっています。
Sourcetree のデメリット
操作スピードは、CUIのほうが早い
とはいっても操作に関しては、CUIのほうが早くできると思っています。
GUIアプリケーションを使うにはアプリの切り替え、現在の表示内容の確認、カーソルを移動してと無意識レベルに行っていますが、CUIにはないこまかな動作ステップが含まれているので、
単純に速さを求めるならば、CUIを使うといいでしょう。
Sourcetree を使うときに意識していること
作業はアプリを利用するが、実際に実行される Git Command は覚えておく
GUIアプリを使っていると、エンジニアはCUIを使うべきだ〜みたいな宗教観を持っている人も中にはいたりしました。確かに黒い画面をいじっている方が、よりエンジニアっぽい感じではあると思います。
ここで重要なのは、おそらくどんなコマンドが実行されているのかを理解しているのか、ということだと思っています。
merge や reset など、どのような処理が行われているのか。Gitで行う動作が実際にはどのようになっているのか。
よく使うコマンドくらいはいつでもCUIから実行できるくらい本質的な動きを理解した上で使っていけると、より良いと思います。
あくまで利便性を享受する道具として、GUIを検討するといいでしょう。
まとめ
今回は、Sourcetree の魅力についてまとめてみました。
普段 CUI で Git を使っている人も、よかったら気分展開にでも「Sourcetree」を使ってみてください。
※筆者はGit管理アプリの中でも「Sourcetree」しか使っていないので、アプリ同士の比較はできていません。
Discussion
自分はSourceTree動作が重くて、Forkに乗り換えました。
ご機会あったら比較してみてください〜
コメントありがとうございます!
確かに時折動作が重たいと感じることもありました。Folk も使ってみて比較してみようと思います。
ありがとうございます!