はじめに
USBメモリ上のディレクトリに対してリモートリポジトリ設定を行おうとすると,中々うまくいきませんでした.
かなり手こずってしまったので,私の場合の解決方法を残しておきます.
環境
- Windows 10
- USB3.0 メモリ
エラー内容
USBのファイル名は F:
で対象ディレクトリは workspace
です.
F:\workspace>echo "# my-repo" >> README.md
F:\workspace>git init
Reinitialized existing Git repository in F:/workspace/.git/
F:\workspace>git add README.md
fatal: unsafe repository ('F:/workspace' is owned by someone else)
To add an exception for this directory, call:
git config --global --add safe.directory 'F:/workspace'
# 以下略
解決方法
safe.directory
として,該当のディレクトリを登録してあげます.
しかし,エラーに出ている通りに以下のコマンドをコマンドプロンプト
でタイプしてもうまくいきません.
git config --global --add safe.directory 'F:/workspace'
'F:/workspace'
の部分を F:/workspace
に書き換えて,
git config --global --add safe.directory F:/workspace
とするとうまくいきました.
ディレクトリ名を囲うクオーテーションを消しました.
注意点1
エラーが提示した 'F:/workspace'
のまま実行すると,safe.directory
として登録されるディレクトリ名にもクオーテーションが含まれてしまいます.
以下のコマンドで,safe.directory
を確認できます.
git config --global -l | find "safe.directory"
出力は以下のようになります.
# 正しいコマンドの場合
safe.directory=F:/workspace
# クオーテーションありで実行した場合
safe.directory='F:/workspace'
注意点2
Windows環境での実行ではありますが,ディレクトリ名の区切りは バックスラッシュ(\)
ではなく,スラッシュ(/)
を用います.
なので,F:\workspace
のようなディレクトリ名は不正です.
正しくは,F:/workspace
のようなスラッシュ区切りです.
おわりに
こんな単純な設定周りの問題だったのに,割と解決までに時間を要してしまった(エラー通りに素直に実行していたため)ので,同じ轍を踏む方が少しでも減ることを祈っています.
それでは