lazygit とは
git操作CUIです。
先達の tig に比べて、メニュー操作のみでコミットログ修正やリベースができるのが魅力です。
UIやヘルプが日本語化されているのも嬉しい。
インストール方法
Ubuntu ではパッケージ化されていないので、sudo apt install
ではインストールできません。
開発元サイトにインストール方法が解説されているのですが、その通りにコマンドを打ち込んでも失敗します。
指示通りのインストール手順
LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep -Po '"tag_name": "v\K[0-35.]+')
curl -Lo lazygit.tar.gz "https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz"
sudo tar xf lazygit.tar.gz -C /usr/local/bin lazygit
失敗理由
- 1行目にて export なしで LAZYGIT_VERSION 変数を設定しているので、2行目のcurlコマンド実行時点では LAZYGIT_VERSION変数は消えており失敗します。
- 3行目で、curlがダウンロードした tar.gz を展開して /usr/local/bin に lazygit を配置しようとしていますが、ファイルのオーナとグループを元通りに展開しようとするので具合が悪いです。
エラーを取り除いたインストール手順
export LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep -Po '"tag_name": "v\K[0-35.]+')
curl -Lo lazygit.tar.gz "https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz"
tar xf lazygit.tar.gz lazygit ; sudo install lazygit /usr/local/bin
export を付け、/usr/local/bin へは sudo install を使って配置するように手順変更しました。
これでインストールに成功しました。オーナとグループも一般的なroot:rootとなります。