[batあり]git がgit config –global –add safe.directoryしろと言ってきたときのbat

この記事は約2分で読めます。
スポンサーリンク

やりたいこと

gitのリポジトリをCloneした直後などにgitから以下のメッセージが表示されPullなどができないことがあります。

Could not open repository.
libgit2 returned: repository path 'X:\XXXX' is not owned by current user

To add an exception for this directory call:
git config --global --add safe.directory 'X:\XXXX'

表示されたコマンドを少し変えて実行すればいいのですが、めんどくさいしルールもすぐ忘れるのでバッチにしました。

上にあるように手動でコマンドを実行するには表示されるコマンドを修正して実行する必要があります。

具体的にはフォルダのパスをかこっている’’を消す必要があります。

スポンサーリンク

バッチの作成

リポジトリのルートフォルダに任意の名前でbatファイルを作成します。(例えばadd_safedir.bat)

作成したbatファイルをメモ帳などで開き以下のバッチをペーストして保存します。


set "current_dir=%~dp0"
set "m_dir=%current_dir:\=/%"
set "m_dir2=%m_dir:~0,-1%"

git config --global --add safe.directory %m_dir2%

pause
スポンサーリンク

バッチの実行

保存したバッチをダブルクリックで実行します。

”続行するには何かキーを押してください . . .”と表示されますので何かキーを押してクローズしてください。

フォルダにスペースが入っている場合は動作しない可能性があります。

スポンサーリンク

結果

gitでpullなどの操作ができるようになりました。

スポンサーリンク

参考にさせていただいたサイト

git config --global --add safe.directory '...' が出たとき - Qiita
はじめにUSBメモリ上のディレクトリに対してリモートリポジトリ設定を行おうとすると,中々うまくいきませんでした.かなり手こずってしまったので,私の場合の解決方法を残しておきます.環境Wind…
BATファイルで文字列の切り出し

コメント

タイトルとURLをコピーしました