git history vs git graph

今までvscodeの拡張としてgit historyを使ってきたが、git graphも良さそうなので比較してみる。
※詳しい内容は個人ブログの方にまとめました。
Git history
Git graph

git history
リポジトリツリーの確認
vscodeのソース管理の時計のアイコンをクリックで使える。
パッと見のUIはこんな感じ。
左端にリポジトリツリーが表示され、右の方に細かいデータが表示される。
ファイル、行単位でのコミット履歴の確認
git historyはファイルで右クリックから「Git:View File History」をクリックで、ファイル毎のコミット履歴も確認できる。
同じ手法で行単位でのコミット履歴の閲覧も可能。
コミットのUIはこんな感じ
特徴として
- ファイル全体
- 現在のワークスペースとの差分
- そのcommitでの差分
を選択可能。

git graph
vscodeのソースコード管理のツリー状のアイコンから遷移可能。
パッと見のUIはこんな感じ
コミット単位のUI
差分は前commitとの。
特徴
- diffもいろいろ設定出来るが、基本前commitとの差分がメイン。
- コミット単位での差分はサクサク見れる
- UIがシンプルで必要な情報が分かりやすい印象
- cherry pickやadd tagなどが簡単

git graphの使い方
リポジトリーツリーを表示
UIがgit historyに比べて見やすい。
コミットを表示
リポジトリーツリーからコミットをクリックすると詳細が表示される。
左側にコミットのデータ。
右側にファイル毎の差分が表示される。
checkout
コミットを右クリック「cherckout branch」でそのブランチにチェックアウト出来る。
現在いるブランチの右には丸が付いているので、視覚的にも確認しやすい。
cherry pick
コミットを右クリック「cherry pick」でそのブランチをチェリーピック出来る。
チェリーピックは他のブランチのコミットをこっちのブランチに持ってこれるコマンド。
別ブランチで作ってまだマージされていないこの機能をこっちのブランチでも実現したい!みたいな時に役立ちます。
revert
コミットを右クリック「cherry pick」でそのブランチをリバート出来る。
リバートは対象のコミットを取り消すコマンド。

Git Historyの特徴
差分の確認方法が「プロジェクト全体」、「ワークスペース」、「直前のコミットと比較」などたくさんある
ファイル単位で差分を遡れる
検索機能がある為、プロジェクトが複雑になっていくほど重宝する作り(な気がする)
色々な選択が出来る分、慣れるまでは使いにくい
Git Graphの特徴
UI がシンプルで必要な情報が分かりやすい印象
cherry pick や add tag など自分がよく使うコマンド操作が簡単に出来て分かりやすい
Author、Date、Commit が最初からカラムに区切られていて、検索しやすい
比較
- UIの差は結構ある。
- 機能もほぼ同じだが、配置はだいぶ違う
- git graphはシンプルで使い勝手良さそう。
- git historyは機能が盛り沢山
Git HistoryとGit Graphのそれぞれの特徴を確認したところで、2つを使い比べてみた自分の印象をまとめます。
やれる事はどっちもほとんど一緒
Git History は情報量が多く、使いこなすまでは圧倒されるかも。。その点、Git Graph は直感的で分かりやすい UI になっている
Git Historyのファイル単位で、そのファイルのコミット履歴を遡れる点はGit Graphにはない魅力
要するに見やすくスッキリの「Git Graph」、なんでも出来る「Git History」という構図です。
自分は「コミット履歴を一覧で確認したい!」といった理由で使うパターンが多いので、スッキリ見やすい点を重視して、「Git Graph」を採用しました。