2019/06/29

SourceTree 管理のリポジトリをVSCodeやIntelliJで開く!

SourceTree

SourceTreeいいですよね。
自分がGitにすんなり馴染めたのも、このSourceTreeのおかげでした。Atlassianさんありがとう!

OSSで開発しているとGitでのバージョン管理は当たり前ですし、複数のリポジトリでソースコードを読みながら開発することも少なくありません。SourceTreeを使うと、多数のリポジトリを視覚的に管理しながらキーワードで検索することもできて便利です。

Repositories list of the SourceTree

見つけたリポジトリをそのままVScodeやIntelliJで開けると、テンポよく開発できて良いです。
というわけで、今日はそのためのちょっとした設定のお話をしますヽ(=´▽`=)ノ

カスタムアクション

SourceTreeにはリポジトリやファイルのパス、コミットのハッシュ値などを使って特定の操作を行うカスタムアクションという仕組みがあります。今回はこれを使います。

VSCodeで開く

対象リポジトリをVisual Studio Codeで開けるようにしてみたいと思います。

まず、SourceTreeの環境設定画面を開きます。

Preference of the SourceTree

環境設定画面でカスタムアクションタブを開いたら追加ボタンを選択します。

Preference-CustomAction

実行するスクリプトには、アプリケーション一覧から選択してVSCodeを指定しても良いですし、CLIでCodeコマンドを有効化している場合はwhich codeで表示されるパスを指定しても良いです。今回は後者で設定しました。パラメータにはリポジトリへのパスを表すマクロ$REPOを設定しました。

Create a custom action for VSCode

使い方は簡単。
リポジトリ一覧で対象リポジトリを選択して右クリック(controlキーを押しながらクリック)して、メニューのカスタムアクションから選ぶだけです。

Select CustomAction from the right click menu

こんな感じで対象リポジトリをVSCodeで開くことができますʕ◔ϖ◔ʔ

VScode with the selected repository

IntelliJで開く

IntelliJについても同様に設定することが可能です。
あらかじめIntelliJのメニューでTools | Create Command-line Launcherを選択して、ideaコマンドでディレクトリを開けるように設定しておきましょう。
Create a custom action for IntelliJ

まとめ

SourceTreeのカスタムアクション便利ですねヽ(=´▽`=)ノ
パラメータとしてコミットのハッシュ値も使えるので、他にも何か素敵ハックできるかも?

おまけ

SourceTreeも好きだけどCLIでサクサクいじるのが好き、という私のような人向けのおまけですʕ◔ϖ◔ʔ

以下のような方法で目的のリポジトリへと簡単に移動可能です。
この手の話は紹介記事や設定に関する記事も多いので大まかな流れだけ。

  • motemen/ghqで全リポジトリを列挙
  • junegunn/fzfでfuzzyに検索して探す
  • 選択したリポジトリのディレクトリへ移動
    • bash、zsh、fishなど使っているshell用にあらかじめ設定しておく

あとは好きなエディタで開いたり、tigで良い感じにコミットするなどです。