11
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

UnityEditor上でgitのヒストリーを表示させるUniGitHistoryViewerを作りました

Last updated at Posted at 2020-07-22

非エンジニアが絡むUnityプロジェクトで、トラブルの原因を見つけやすくするためのツールを作りました。

経緯

チーム開発をしていると作業ファイルごとのgitの履歴を知りたくなる事があります。

特に非エンジニアがUnityプロジェクトに対して画像の追加やPrefabの修正などをした時です。

ソースコードであればRiderなどのエディタに履歴閲覧機能が備わっている場合があるので問題はありません。
しかし画像などのバイナリファイルを調査する時は少し時間がかかります。

  • シェルからgit logコマンドを実行して調査
  • SourceTreeなどのGUIツールからgit log相当の機能を実行して調査

など

Riderでもバイナリファイルのgit履歴は調査可能ですが、Riderがインストールされていない非エンジニアは困ります。非エンジニアにgit logさせるのもハードルが高め。。。

理想はUnityEditor上からgitの履歴をサクッと確認できる事です。

ということで非エンジニア向けの「UniGitHistoryViewer」というものを作りました。

UniGitHistoryViewerとは

UniGitHistoryViewerとはUnityEditor上でサクッと任意のファイルまたはディレクトリのgit履歴を閲覧するエディタ拡張です。

使い方

Tools > UniGitHistoryViewerから開きます。

プロジェクトウィンドウでファイルまたはディレクトリを選択してCheck Historyボタンをクリックします。
すると履歴が以下のgif動画のようにリストアップします。

unigithistoryviewer.gif

表示内容は以下です。

  • commit日時(年-月-日)
  • author
  • コミットメッセージ

Countに最大表示履歴数を設定でき、また、左端のCボタンをクリックするとコミットハッシュをクリップボードにコピーする事ができます。

インストール方法

Unity2019.3.4f1以降1の場合はUnityPackageManagerでインストール可能です。

  • UnityPackageManager(以下:UPM)からインストール
  • manifest.jsonを書き換えてインストール

Unity2019.3.4f1未満の場合は従来のunitypackageをインポートしてインストール出来ます。

  • unitypackageをインポート

このどれかを選んで頂ければと思います。

UPMからインストールする方法


Add Package Git URLを選択します。


以下のパッケージURLを入力します。
https://github.com/baobao/UniGitHistoryViewer.git?path=Assets/UniGitHistoryViewerを入力してAddボタンをクリックします。するとインストールが完了します。

manifest.jsonを書き換えてインストールする方法

UPMを使わない場合はmanifest.jsonのdependenciesに以下を追加してインストールしてください。

"info.shibuya24.uni-git-history-viewer": "https://github.com/baobao/UniGitHistoryViewer.git?path=Assets/UniGitHistoryViewer"

unitypackageをインポートしてインストールする方法

Unity2019.3.4f1未満の環境の場合はunitypackageReleaseページからダウンロードできますので、そちらをインポートしてインストールしてください。

UniGitHistoryViewerを使うメリット

このツールを使うメリットは複数の非エンジニアメンバーがUnityを触る場合に生まれます。
非エンジニア同士、誰がどのファイルを触ったかという事実は重要で、何かトラブルが発生した際に、非エンジニアメンバーのみで安全に調査できる情報(ここでは履歴情報)が増える事で、エンジニアが介入することなく原因の特定をする可能性が上がります。

僕はエンジニア、非エンジニアがそれぞれ並列して仕事できている状態がベストだと考えています(時と場合にもよりますが)。
その状態を促進させるツールの1つになれば良いなと思っています。

最後に

よろしければ使って頂きバグがあればPR、issueをお待ちしております。
https://github.com/baobao/UniGitHistoryViewer

  1. Unity2019.3.4f1以降でないとPackage URLのクエリパラメータに対応していないため

11
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?