我正在尝试使用git克隆带有std布局的svn存储库(使用-s
选项)。存储库匿名使用https
(存储库位于https://secure.simplistix.com/svn/xlwt/)。我可以使用svn
检查存储库,但git-svn
我收到密码提示然后无法检出(我没有此存储库的帐户):
Authentication realm: Simplistix Subversion Server Password for 'davidf': Authentication realm: Simplistix Subversion Server Username: Password for '': Authentication realm: Simplistix Subversion Server Username: Password for '': W: Ignoring error from SVN, path probably does not exist: (160013): Filesystem has no item: '/svn/!svn/bc/100/xlwt' path not found W: Do not be alarmed at the above message git-svn is just searching aggressively for old history. This may take a while on large repositories
生成的存储库完全为空
git-svn
似乎假设如果存储库以https
开头,则需要进行身份验证。有办法解决这个问题吗?
答案 0 :(得分:5)
原因可能是匿名用户无法访问SVN存储库的根目录。
来自git help svn
:
当跟踪多个目录(使用
--stdlayout
,--branches
或--tags
选项)时,git svn将尝试连接到Subversion存储库的根目录(或允许的最高级别)。如果整个项目在存储库中移动,则此默认设置允许更好地跟踪历史记录,但可能会导致读取访问限制到位的存储库出现问题。
由于您使用-s
选项(--stdlayout
的简写),这会对您产生影响。
要防止git svn尝试连接到存储库的根目录,请在命令行中添加选项--no-minimize-url
。
另请参阅:git help svn
答案 1 :(得分:2)
我知道这可能与之相关:
http://subversion.tigris.org/issues/show_bug.cgi?id=3242
如果不是那样的话,那么你可能会运气不好...... 我的存储库的根目录是不可公开访问...