SourceTree でリポジトリの一覧から、リポジトリの保存場所をターミナルで開けるようにする。

SourceTree

SourceTree のリポジトリの一覧から、選択したリポジトリのワーキングコピーのディレクトリをターミナルで簡単に開けるカスタムスクリプトを作成しました。


SourceTree は、リポジトリを開いていれば、ツールバーから、そのワーキングコピーがあるディレクトリをターミナルで簡単に開けます。

ただ、リポジトリの一覧が表示されているウィンドウからも、選択したリポジトリのワーキングコピーをターミナルで開けたら便利そうだったので、それを実現するカスタムスクリプトを作成しました。

リポジトリ内にあるワークスペースファイルやプロジェクトファイルを Xcode で開くカスタムスクリプトを作成したときのお話はこちら で紹介しています。

カスタムスクリプトを作成する

スクリプトファイルを作成する

まずは、Mac 内のどこかに次のスクリプトを記載したテキストファイルを保存します。

#!/bin/sh

open -a Terminal "$1"

これを今回は ~/SourceTree/CustomScript/OpenInTerminal.sh という名前で保存しました。

そうしたらターミナルで次のコマンドを実行して、このファイルに実行権限を付与します。

chmod +x ~/SourceTree/CustomScript/OpenInTerminal.sh

これでスクリプトファイルの準備ができました。

スクリプトを SourceTree に登録する

スクリプトファイルの準備ができたら、それを SourceTree に登録します。

SourceTree を起動したら、メニューから SourceTree Preferences... を選択すると、設定画面が表示されるので、ここで次のような内容でカスタムスクリプトを登録します。

項目 内容
メニューキャプション カスタムスクリプトの設定に付ける名前です。今回は "Open in Terminal" にしました。
実行スクリプト 用意しておいたスクリプトファイル OpenInTerminal.sh を指定します。
パラメータ ここで$REPO を指定して、スクリプトにリポジトリへのパスを渡します。

ショートカットは登録不要

この画面では、カスタムスクリプトを実行するショートカットキーを登録できますが、ツールバーに標準で用意されているTerminal ボタンには T というショートカットが既に割り当てられています。

リポジトリを開いているときは、標準機能の方のShow In Terminal を使えば済むので、自分で登録するスクリプトにはショートカットは割り当てないでおきます。

なお、標準機能であってもカスタムスクリプトであっても、リポジトリの一覧画面からはショートカットキーでは機能を呼び出せない様子です。

登録完了

あとはOKボタン を押せば、これでカスタムスクリプトの登録作業は完了です。

カスタムスクリプトを実行する

カスタムスクリプトを登録できたら、リポジトリの一覧画面からそれを実行できます。

ターミナルで開きたいリポジトリの上で右クリックをして、ポップアップメニューの中から Custom Actions を選択して、カスタムスクリプト登録時につけたメニューキャプション名を選択します。

そうすることで、選択したリポジトリの作業ディレクトリがターミナルで開かれます。