履歴のある大規模なサブバージョン リポジトリを git に移行しています。「git svn clone」コマンドを使用して svn リポジトリのクローンを作成することから始めました。これはクローン作成中にクラッシュしましたが、「git svn fetch」を実行して移行を再開しました。移行は数日間正常に実行されていました-時々クラッシュし、ここで説明されているように index.lock ファイルを削除する必要がありました-致命的: Unable to create '/.git/index.lock': File exists . このファイルを数回削除した後、同じエラーが発生するまで正常に続行されました。
fatal: Unable to create '/path/index.lock': File exists.
If no other git process is currently running, this probably means a
git process crashed in this repository earlier. Make sure no other git
process is running and remove the file manually to continue.
read-tree f49b2a08d26076d9cb2828b9aba5fde30d46f73b: command returned error: 128
ただし、今回は index.lock ファイルの削除が機能せず、「git svn fetch」は引き続き文句を言います。何が起こっているかは次のとおりです。
上記のエラーが表示
されます index.lock ファイルを削除します
'git svn fetch' を再起動します
'git svn fetch' プロセスが index.lock ファイルを再作成し
ます
したがって、「git svn fetch」は、index.lock ファイルを再作成し、それが存在することについて不平を言う悪いループにあるようです。そう:
index.lock ファイルを削除しました。
マシンに十分なディスク容量があることを確認しました。
ロックファイルを保持していた古いgit処理がぶら下がっている場合に備えて、マシンを再起動しようとしました。
ここでアドバイスされているように、git gc と git prune を実行しました Fatal : git-write-tree: error building trees
上記のどれもうまくいきませんでした。私は git が初めてです。移行には数日かかるため、移行を再開したくありません。誰かが私が試すことができる何か他のことを提案できますか?