2015-09-11 64 views
2

我正在将几个Perforce项目迁移到Git。一个是在与过程的18%,虽然失败:fatal:不支持的命令:Users.Ref“KPLUS”

致命的:不支持的命令:Users.Ref“KPLUS”

它看起来像git的快速导入正试图执行的文本文件应在何处印刷(我认为)

快速导入碰撞报告显示我

fast-import crash report: 
fast-import process: 28327 
parent process  : 28325 
at Fri Sep 11 14:34:26 2015 

fatal: Unsupported command: Users.Ref "KPLUS" 

Most Recent Commands Before Crash 
--------------------------------- 
.... 
.... 
    commit refs/remotes/p4/master 
    committer USERNAME <EMAIL> 1175609377 +0100 
    data <<EOT 
* Users.Ref "KPLUS" 

Active Branch LRU 
----------------- 
    active_branches = 1 cur, 5 max 

    pos clock name 
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    1) 714 refs/remotes/p4/master 

Inactive Branches 
----------------- 
refs/remotes/p4/master: 
    status  : active loaded 
    tip commit : 307170cc21264c58ab1943c16f1d2943c1a44f45 
    old tree : 2f45d5c6d9cbe56e5f335f92b21316ad272f3504 
    cur tree : 2f45d5c6d9cbe56e5f335f92b21316ad272f3504 
    commit clock: 714 
    last pack : 0 


Marks 
----- 

------------------- 
END OF CRASH REPORT 

文本是在似乎并没有很好地形成一个xml文件但我会认为这应该不重要。

+1

使用--verbose运行git-p4并尝试识别失败的更改列表。在更改列表中必须有一些独特的东西正在破坏它。 – Vitor

回答

1

找到提交消息中的原因。消息中有“EOT”行,导致git-p4脚本将其解释为事务结束。所有下一行都被解释为可执行的行。将git-p4脚本从使用EOT更改为EOM解决了这个问题。

+0

这是一个有趣的信息。将它作为git邮件列表中的错误报告会很好。 – Vitor

+0

不确定在哪里举报。你有链接给我吗? – JohanKees

+0

不用担心,我会创建一个小测试用例,并将它自己提交给邮件列表。 – Vitor