Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git p4同步操作失败_Git_Perforce_Git P4 - Fatal编程技术网

git p4同步操作失败

git p4同步操作失败,git,perforce,git-p4,Git,Perforce,Git P4,我正在使用“git-p4”脚本从p4迁移到git。由于更改列表数量巨大(约500万),克隆操作失败。因此,我尝试执行增量导入操作: 我尝试克隆第一次运行,然后同步操作。我测试了小改动列表 首次运行: git p4 clone //depot/f1/f2/f3/ere@17888479,17918050 -v 第二轮: git p4 sync //depot/f1/f2/f3/ere@17918051,17918064 -v 错误: Traceback (most recent ca

我正在使用“git-p4”脚本从p4迁移到git。由于更改列表数量巨大(约500万),克隆操作失败。因此,我尝试执行增量导入操作: 我尝试克隆第一次运行,然后同步操作。我测试了小改动列表

首次运行:

git p4 clone //depot/f1/f2/f3/ere@17888479,17918050 -v
第二轮:

git p4 sync //depot/f1/f2/f3/ere@17918051,17918064 -v     
错误:

Traceback (most recent call last):
  File "C:\Program Files\Git\mingw64/libexec/git-core\git-p4", line 3677, in <module>
    main()
  File "C:\Program Files\Git\mingw64/libexec/git-core\git-p4", line 3671, in main
    if not cmd.run(args):
  File "C:\Program Files\Git\mingw64/libexec/git-core\git-p4", line 3429, in run
    die("fast-import failed: %s" % self.gitError.read())
  File "C:\Program Files\Git\mingw64/libexec/git-core\git-p4", line 122, in die
    raise Exception(msg)
Exception: fast-import failed: warning: Not updating refs/remotes/p4/master (new tip 85c94d84335bb1441a7f959b384729b2a4d633f4 does not contain 3222bdc29799d1fe5fff91c36524481b1469f1d9)
回溯(最近一次呼叫最后一次):
文件“C:\Program Files\Git\mingw64/libexec/Git core\Git-p4”,第3677行,在
main()
文件“C:\Program Files\Git\mingw64/libexec/Git core\Git-p4”,第3671行,在main中
如果不是cmd.run(args):
文件“C:\Program Files\Git\mingw64/libexec/Git core\Git-p4”,第3429行,正在运行
死(“快速导入失败:%s”%self.gitError.read())
文件“C:\Program Files\Git\mingw64/libexec/Git core\Git-p4”,第122行,在die中
引发异常(msg)
异常:快速导入失败:警告:不更新REF/remotes/p4/master(新提示85c94d84335bb1441a7f959b384729b2a4d633f4不包含322BDC29799D1FE5FFF91C36524481B1469F1D9)
解决方法: -创建目录并克隆具有更改列表范围的代码。 git p4克隆//仓库/f1/f2/f3/ere@17888479,17918050-v -将代码推送到GIT存储库。您可以使用下面链接上的给定脚本来移动具有历史记录的代码。 -创建另一个目录(空存储库)并克隆具有增量更改列表范围的代码。 -从GIT中提取代码并将其与本地存储库中的代码合并。 -解决冲突并在提交后推送冲突

git快速导入过程中出现冲突

对于Git 2.26(2020年第1季度),
Git-p4
应该在该边缘情况下更加健壮

参见(2020年1月30日)和,,,,(2020年1月29日)的作者。
(于2020年2月14日合并)

:错误退出时更好地清理 签字人:Luke Diamand

出错后,
git-p4
调用
die()
。这只是退出,子进程仍在运行

不要调用
die()
,而是在创建子进程(
git fastimport
)的位置引发异常并捕获它

此更改没有解决调用子孩子并且在出错时不等待它的
p4CmdList()
的特定问题


是否使用--detect branchs?不,我使用的命令与说明中提到的相同。请尝试使用git p4 clone中可用的“-max changes”和“-changes block size”参数,而不是使用变更列表范围。谢谢,我找到了一个解决方法。我将变更列表范围克隆到不同的存储库(空存储库),并通过合并操作一个接一个地推送。不要忘记在回答您的问题时描述它。