我第一次在 windows 上使用 git-svn,git svn rebase
显示错误:
fatal: index file open failed: Invalid argument
为什么会发生,我该如何解决?
谢谢。
如果您在 Windows 上使用 msysgit,则 msysgit1.8.4 上有一个回归git-svn
。
它似乎在 CMD 中执行时出现,而不是在 bash shell 中,因此您可以在 shell 中尝试相同的命令。
或者您可以使用 SubGit,它是从 svn 过渡到 git repo 的更完整和更强大的工具。在 GitMinutes #22 上聆听他的作者。
回归是正在进行中已修复(目前 - 2013 年 10 月 - 在git repo的“next
分支”中)
Bas Bossink在评论中确认:
我刚刚验证它在git 1.8.5.2.msysgit.0中已修复
请参阅jiangxin 提交的7fbd42:
Tvangeste发现
relative_path
如果“in”和“prefix”有DOS 驱动器前缀(如“C:/windows”),则“ ”功能无法在Windows 上正常工作。( $gmane/234434 )例如,当执行时:
test-path-utils
,relative_path "C:/a/b" "D:/x/y"
应该返回“C:/a/b
”,但返回“../../C:/a/b
”,这是错误的。所以让 relative_path 尊重 DOS 驱动器前缀。
我在使用 --separate-git-dir 与工作目录和不同驱动器上的 git 目录(在我的情况下是网络驱动器上的 git)时看到了这个问题。作为一种解决方法,我已经确认您可以使用 mklink(以管理员身份运行)来映射目标驱动器: mklink /d "C:\temp\my-git-dir" "D:\my-git-repo\"
然后像下面这样的东西会产生一个可行的回购和工作目录。git clone --no-hardlinks repo_url --separate-git-dir=D:/my-git-repo C:/temp/my-working-dir