我正在将具有历史记录的大型颠覆存储库迁移到 git。我首先使用'git svn clone'命令克隆svn repo。这在克隆时崩溃了,但是,我通过执行“git svn fetch”恢复了迁移。迁移已经成功运行了几天 - 偶尔它崩溃了,我不得不删除 index.lock 文件,如此处详述 -致命:无法创建'/.git/index.lock':文件存在。多次删除此文件后,它成功继续,直到我遇到相同的错误:
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' 错误再次出现上述错误
所以'git svn fetch'似乎处于一些错误的循环中,它正在重新创建 index.lock 文件,然后抱怨它存在。所以:
我已经删除了 index.lock 文件。
我已经确保机器有足够的磁盘空间。
我已经尝试重新启动机器,以防有一个旧的 git 处理挂在锁定文件上。
我已经按照此处的建议进行了 git gc 和 git prune致命:git-write-tree: error building trees
以上都没有奏效,我是 git 新手。我不想重新开始迁移,因为它需要几天才能运行。谁能建议我可以尝试的其他东西?