繁体   English   中英

git2svn无法创建符号链接(文件名太长)

[英]git2svn unable to create symlink (File name too long)

我安装了svn2git以快速将SVN存储库转换为GIT。 我在不同的机器(Ubuntu 16.04)和不同的SVN存储库上尝试了转换过程。

现在我在Linux Mint Cinnamon上使用了一个不同的(但非常类似的)SVN存储库。

git clone https://my.git.com/repository.git
cd repository
svn2git svn://my.svn.com/repository --authors ../authors_transform.txt

.
.
.

error: unable to create symlink asp/layer/man/rep/onewith_totalmax_victory.php (File name too long)
read-tree -m -u -v HEAD HEAD: command returned error: 128

我已经读过/ home加密可能性(作为文件长度限制),这不是我的情况。 尝试触摸随机字符串

touch Etiam_tortor_est0_placerat_sit_amet_dolor_in0_ultricies_malesuada_nisi-_Aenean_et_urna_enim-_Vivamus_porta0_velit_et_pulvinar_fermentum0_urna_lacus_tempor_sapien0_et_laoreet_tellus_elit_nec_ligula-_Nulla_iaculis0_libero_eget_rutrum_mattis0_nisl_velit_vive

这是256个字符并创建文件。

怎么处理这个?

编辑:问题发生在macOS Sierra上。

转换打破了符号链接试试这个:

git clone --no-checkout https://my.git.com/repository.git
cd repository
git config core.symlinks false
git checkout <branch>

毕竟它似乎是一个特定文件的问题,同时是符号链接和文件?

无论如何手动修复SVN中的文件然后执行转换修复了问题。

您使用的svn2git工具在引擎盖下使用git-svn ,因此它不适合“快速转换”SVN存储库。

有所谓的pleny工具svn2git中,可能是最好的一个是KDE一个https://github.com/svn-all-fast-export/svn2git 我强烈建议使用该svn2git工具。 这是我所知道的最好的,它可以非常灵活地使用它的规则文件。

您使用的svn2git基于git-svngit-svn 不是用于一次性转换存储库或存储库部件的正确工具。 这是一个伟大的工具,如果你想使用Git的作为前端为现有的SVN服务器,但对于一次性转换,你应该使用git-svn ,但svn2git这是该用例更加适合。

如果您不是100%关于存储库的历史记录, svneverever来自http://blog.hartwork.org/?p=763的 svneverever是一个很好的工具,用于调查SVN存储库在将其迁移到Git时的历史记录。


即使git-svn (或者你的情况下错误的svn2git )更容易入手,这里有一些其他原因,为什么使用KDE svn2git代替git-svn是优越的,除了它的灵活性:

  • 通过svn2git (如果使用正确的历史)重建历史更好更清晰,对于更复杂的分支和合并历史记录尤其如此等等
  • 标签是真正的标签而不是Git中的分支
  • 使用git-svn标签包含一个额外的空提交,这也使它们不属于分支,因此正常的fetch将不会得到它们,直到你给命令--tags ,因为默认情况下只提取指向提取的分支的标签。 适当的svn2git标签是他们所属的地方
  • 如果您在SVN中更改了布局,您可以使用svn2git轻松配置它,使用git-svn最终会丢失历史记录
  • 使用svn2git您还可以轻松地将一个SVN存储库拆分为多个Git存储库
  • 或者将同一SVN根目录中的多个SVN存储库轻松组合到一个Git存储库中
  • 使用正确的svn2git比使用git-svn快转换数倍

git-svn更糟糕且KDE svn2git更优越的原因有很多。 :-)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM