サーバレスのサムネイル

サーバレス

Gitlab CLIでpush時に「glab auth not found」となった際の対処方法

公開日: 2024.3.19

Gitlab CLIをアップグレードすると、git push時に「glab auth not found」となることがあります。その対処方法と、原因を解説します。

編集ノート:SERVERSUSでは、パートナーリンクからコミッションを得ています。コミッションが記事の意見や、サービスの評価に影響を与えることはありません。

エラーの概要

HomebrewでインストールしたGitlab CLIをアップグレードした後に、レポジトリにpushをしようとすると下記のエラーに遭遇することがあります。

git push origin main

/home/linuxbrew/.linuxbrew/Cellar/glab/1.36.0/bin/glab auth git-credential erase: 1: /home/linuxbrew/.linuxbrew/Cellar/glab/1.36.0/bin/glab: not found

このエラーの対処方法を解説します。

対象方法

gitがクレデンシャルをするアプリケーションの設定が.gitconfigに書き込まれているので、そちらを修正します。

vi ~/.gitconfig

[credential "https://gitlab.com"]
        helper = 
        helper = !/home/linuxbrew/.linuxbrew/Cellar/glab/使っているバージョン/bin/glab auth git-credential

上記の「使っているバージョン」のところが古いバージョンになっているはずなので、そこを使っているバージョンに修正すればエラーは止まります。

エラー原因

エラーログにある通り、「/home/linuxbrew/.linuxbrew/Cellar/glab/1.36.0/bin/glab」がないというエラーです。

なぜこういうことが起きるかというと、Homebrewでインストールしたglabは「/home/linuxbrew/.linuxbrew/Cellar/glab/」以下にバージョン付きでインストールされますが、アップグレードをすると古いバージョンが消えます。

そのため、「not found」となるわけです。

試しにバージョンを確認すると、

glab --version
glab version 1.37.0 (2024-03-07)

最新版になっていますが、先ほどの.gitconfigにはバージョン指定で書き込みがされているため問題があるわけです。

ちなみに、同じCLIでもGithubはバージョン指定をしていないのでこの問題は起きません。


価格は記載がある場合を除き、すべて税込みです。

関連キーワード

サーバレスの新着記事