perforce - 当存在一个不再存在的同名分支时分支 p4python
问题描述
在使用 p4python 测试我的应用程序时,我遇到了一个有趣的问题。不久前,我从主流目录分支到测试目录,我对该分支进行了还原,因为它出现问题,因此测试分支消失了(还原并提交)。解决问题后,我决定再次使用相同的名称进行分支,但 P4python 说 Can't populate target path when files already exist.
那个分支不再存在我不明白为什么 p4python 会输出这样的错误。这是我用于分支的代码:
result = p4.run("populate", path +"@"+ changelist, destination)
所以我的问题是,如果删除了该名称的旧分支,如何能够再次使用相同的名称进行分支?
解决方案
该populate
命令仅适用于您创建全新分支的特定情况;它不处理您可能需要针对目标解析源的任何情况,因此如果目标中有任何文件(甚至已删除的文件),它将自动失败。
如果分支只是用于测试,您可以将其删除:
p4 obliterate -y destination/...
或者您可以更改代码以考虑现有文件:
p4.run("integrate", f"{path}@{changelist}", destination)
p4.run("resolve", "-as")
result = p4.run("submit", "-d",
f"integrated from {path}@{changelist} to {destination}")
推荐阅读
- javascript - 为 React 中选择的菜单用户设置“活动”类名
- ios - 调用 beginUpdates 后 UITableView setContentOffset 不起作用
- flutter - Rounded SliverAppBar 背景问题
- javascript - 愤怒的 Hackerrank 教授
- android - Flutter firebase_ml_vision 构建失败并出现异常
- c++ - 使用初始化列表分段构建地图
- networking - 如何在没有应答的情况下监听 tcp 端口?
- c - BN_print_fp() 函数总是在 OpenSSL 中以十六进制输出 BIGNUM 对象?
- javascript - 如何创建一个html按钮来调用一个css脚本
- c - Modulo % 仅在 C 中打印一个零位