2013-01-24 15 views
3

我运行下面的命令来克隆一个SVN仓库:混帐svn的克隆打印数以百计的“错误:太多的比赛为SVN-remote.svn.added占位符”

git svn clone -s --preserve-empty-dirs --username=my_svn_username https://svn.repo/path projectname 

这成功地跑了几小时,但现在正在每次修订中打印以下消息许多次,多次:

error: too many matches for svn-remote.svn.added-placeholder 

克隆过程似乎继续;我可以看到这些消息之间的日志中出现修订。但是,这个错误打印的次数似乎在增加。第一个有问题的修订导致错误被打印了39次;下一个78;然后117 - 在撰写本文时的最新版本导致上述错误被打印13,604次。

我从头开始克隆这个仓库,因为我已经从中成功运行多个月的现有仓库也遇到了这个错误。一切都很好,直到我执行了一个git svn fetch,我相信这导致了git svn发现了一个引发这个错误的新分支。

在使用SVN时,我可以签出显示此错误的第一个修订版,而且没有问题,并且可以成功更新修订版。

有没有人见过这个?任何解决错误的线索?

回答

1

今天早上解决了问题。

有清晰的#define在config.c这限制了空目录,以512

将其更改为更大的东西,用“做”和“做安装”命令来编译和重新安装混帐到MAX_MATCHES 512电脑。

代码中可以看到: https://github.com/git/git/blob/master/config.c

+0

谢谢,这个我指出了正确的方向,虽然我已经有一个星期了修改或编译饭桶。事实证明,我的.git/config文件有6000个条目,如** added-placeholder = path/to/.gitignore ** - 每个文件有许多重复项,但每个分支只有大约20个独特行。最后,我解开了一些我不关心的SVN分支,并清理了.git/config文件。我不知道文件是如何得到如此糟糕的数据的,所以它可能会再次发生,但现在绝对够用了。 – Samwise