2016-04-08 271 views
1

我无法从Git克隆svn存储库。 我已经定义了包含SVN回购贡献的所有用户的users.txt文件。然后,我执行以下命令来克隆SVN回购:“git svn clone”:作者未在users.txt中定义?

git svn clone --no-metadata --authors-file=C:/temp/Migration/AES_Exchange/users.txt https://some.url.com 
/repos/Exchange Git_SVN 

但我得到一个错误,指出: "Author: SVNAdmin not defined in C:/temp/Migration/AES_Exchange/users.txt file"

即使用户在user.txt文件,定义。

SVNAdmin = svnadmin <[email protected]> 
adaraz = adaraz <[email protected]> 

任何帮助将不胜感激。

谢谢

回答

1

您是否使用Git for Windows或Cygwin Git?如果后者你可能需要在Cygwin语法中给出路径。如果前者尝试在选项周围使用反斜杠和引号或双反斜线或组合。

+0

我不确定这是什么部署,因为我已经从https://github.com/gitextensions/gitextensions/releases/tag/v2.48.05 < - 这里安装了。但是,我尝试了两个建议,没有任何帮助。这个问题不在我猜的路径中,因为git在找不到users.txt时会抛出不同的错误消息 – Davita

+0

也许尝试在文件中以小写形式写入用户名? – Vampire

+0

是的,已经尝试过了,同样的错误:( – Davita

3

我不确定是什么导致了这个问题,但将users.txt编码从UTF8 BOM更改为UTF8解决了这个问题。我用记事本++ - >编码 - >以UTF-8编码 - >保存。我读到了某处,因为BOM带有标题,Git无法正确读取文件中的第一行,因此错过了第一个用户。我失去了链接,所以无法分享它,对此抱歉,但无论如何,看起来像一个跛脚的错误。

+1

啊,这当然是有道理的。这不是一个错误。如果文件必须采用特定编码,则必须具有该编码。如果以不同的编码保存文件,则使用者会得到错误的内容,因为他仍然使用所需的编码来解码文件。带有BOM的UTF-8是与UTF-8不同的编码。 BOM表示字节顺序标记,是一个三字节序列,用于指定是使用小端还是大端。如果你用“普通”的UTF-8解码,你会在第一行前面得到这三个额外的字节,因此在你的情况下它当然不匹配。 – Vampire

相关问题