git svn rebase“;“文件名太长”;
我在跑步git svn rebase“;“文件名太长”;,git,svn,version-control,git-svn,dvcs,Git,Svn,Version Control,Git Svn,Dvcs,我在跑步 $ git svn rebase 几分钟后,它完成抓取并开始重定基址。 我得到了下一个错误消息: First, rewinding head to replay your work on top of it... error: cannot stat '$73_chars_4_deep_levels_path_with_spaces/$180_chars_file_name_looks_cutted_with_spaces_too': File name too long error
$ git svn rebase
几分钟后,它完成抓取并开始重定基址。
我得到了下一个错误消息:
First, rewinding head to replay your work on top of it...
error: cannot stat '$73_chars_4_deep_levels_path_with_spaces/$180_chars_file_name_looks_cutted_with_spaces_too': File name too long
error: cannot stat '$73_chars_4_deep_levels_path_with_spaces/$180_chars_file_name_looks_cutted_with_spaces_too': File name too long
error: cannot stat '$73_chars_4_deep_levels_path_with_spaces/$180_chars_file_name_looks_cutted_with_spaces_too': File name too long
could not detach HEAD
rebase refs/remotes/git-svn: command returned error: 1
我读了下面的问题
“”
它与我关系密切,但不能解决我的问题
也不是
也不是
未发现问题“$180\u字符\u文件\u名称\u外观\u剪切\u带有\u空格\u也”文件。
我也不能像bdonlan在他的解决方案中所说的那样(通过某种政治决定)重命名文件
除了将每个文件夹下载到单独的SVN repo并通过嫁接合并之外,是否有其他解决方法或解决方案
更新
我已经试过以上所有的方法了
MacOsX 10.6
git version 1.7.9.6
svn, version 1.7.4 (r1295709)
而且提交者正在使用NTFS从Windows执行他们的工作
更新2
我做了一些调查。
我认为问题在于UTF-8字符。
我已尝试创建新文件
$ touch "$180_chars_file_name_looks_cutted_with_spaces_too"
$ ls
132_chars_file_name_with_numbers_at_the_end
文件看起来已损坏。它的结尾有一些数字。您可以复制它,例如:
$ touch "яяяяяяяяя яя яяяя яя яяяяяяяяяя яяяяяяяяя я яяяяяя я яяя яяяяяяяяя яяяяяяяяяяяяя яяяяяяяя я яяяяяяяяяяяяяяяяяя яяяяяя яя яяяяяя яяяяяяяяяяяяя яяяяяяяя яяяяя яяяяяя я яяя яяяяя яяя"
$ ls
яяяяяяяяя яя яяяя яя яяяяяяяяяя яяяяяяяяя я яяяяяя я яяя яяяяяяяяя яяяяяяяяяяяяя яяяяяяяя я яяяяяяяяяяяяяяяяяя яяяяяя яя яяяяяя яяяя#464CDD8
当vim编辑器成功打开“132字符文件名,末尾带有数字”并对其进行编辑时。
但当我输入“:wq”时,文件消失了
现在我想我找到了问题的根源,但之后的生活并不轻松)这里是我找到的一个糟糕但有效的解决方法 MsysGit和Cygwin都正常使用该文件 所以,我买了VirtualBox并在其中安装了Windows 然后我将我的项目复制到VirtualBox中 git svn rebase非常出色地完成了它的工作 之后,我可以将更新后的项目(或从中重新设置基础)复制回MacOs主机。
当然,长名称的文件并没有被复制,但我现在可以跳过它们并添加到忽略列表中。最后,我在我的情况下找到了尽可能优雅的解决方案。 我已经用MacOs磁盘工具创建了ExFat dmg映像。 之后,我挂载了新的图像文件,并将我的git repo复制到其中。 它比VirtualBox下的Cygwin工作得更好 另外,我也尝试过使用NTFS,但失败了。NTFS-3G和Tuxero驱动程序都不支持长UTF名称。
Linux和ReiserFS也是如此。你的平台和git版本是什么?哦,对不起,忘了写了。MacOsX 10.6 git版本1.7.9.6 svn,版本1.7.4(r1295709)
$ touch "$180_chars_file_name_looks_cutted_with_spaces_too"
$ ls
132_chars_file_name_with_numbers_at_the_end
$ touch "яяяяяяяяя яя яяяя яя яяяяяяяяяя яяяяяяяяя я яяяяяя я яяя яяяяяяяяя яяяяяяяяяяяяя яяяяяяяя я яяяяяяяяяяяяяяяяяя яяяяяя яя яяяяяя яяяяяяяяяяяяя яяяяяяяя яяяяя яяяяяя я яяя яяяяя яяя"
$ ls
яяяяяяяяя яя яяяя яя яяяяяяяяяя яяяяяяяяя я яяяяяя я яяя яяяяяяяяя яяяяяяяяяяяяя яяяяяяяя я яяяяяяяяяяяяяяяяяя яяяяяя яя яяяяяя яяяя#464CDD8