Gitコマンドをちょっとだけ便利にするプラグイン書いた

何をつくったの?

Gitを使った開発フローでは、作業に応じていくつもブランチを作成して 切り替えて使っていくことになります。

ブランチごとにファイルは独立していて、気軽にファイルの書き換えもできるし、他の人と協業しやすいので非常に便利です。

ですが、正直ブランチを操作するコマンドって面倒じゃないですか?

ブランチ名を覚えておいて、毎回そのブランチ名を入力してあげないといけません。ブランチ名を忘れてしまったらgit branch -aして......と、よくやる操作にしては手順もタイプ数も多いです。

SourceTreeのようなGUIクライアントを使っている人ならあまり気にならないかもしれませんが、基本的にコマンドを叩いている自分は常々「面倒だなー」と感じていました。

加えて、最近仕事で細かくブランチを切り替えて作業することが多くこのストレスがピークに達してしまったので、以下のようなツールを作成しました。

f:id:ponday:20190112140303g:plain
動作サンプル

リポジトリの指定が必要な

  • git checkout
  • git branch -d

コマンドのターゲットとなるブランチを、ブランチ一覧からカーソル移動で選択できます。

それぞれ

  • git switch
  • git remove

で実行できます。

インストール

Homebrew経由でインストールできます。

brew tap ponday-dev/git-plugin-choosable
brew install git-plugin-choosable

開発環境など

リポジトリはこちら
ponday-dev/git-plugin-choosable

珍しくGo言語で開発してみました。今のところmacOS用のビルドしか準備してないですが、ビルド自体はDockerでやってるのでクロスコンパイルの設定書き換えてもらえればWindowsでも動くかも。

昨日思いついて走り書いたので正常系しか確認していなくて、Ctrl + Cで中断するとGo言語のスタックトレースが表示されたりと粗はたくさんありますが一応使う分には問題ないということで公開しました。

また、GitHubでしか動作確認してないので他の環境では動かないかもしれません。修正などがあればPRいただけると嬉しいです!

↓ 使用したライブラリ