我的一位同事有一个搁置的更改列表(CL#12345),其中包括编辑和新的(添加的)文件。所有文件都位于:

//software/my_luggage/main/...

我想unshelve这些更改,并将其应用于位于以下位置的分支:
//software/my_luggage/beta/...

我尝试通过以下方式生成并手动应用修补程序:
p4 describe -S 12345 > ~/tmp.patch

然而,这有两个问题:
修补程序需要转换为通用的unix diff格式,类似于p4 diff -du的输出(我有一个脚本)。
p4 describe操作的输出不包含新文件/添加的文件中的内容。
是否有一种简单的方法来p4 unshelve搁置的变更列表并修改将要“应用”搁置的目标,或者我必须手动复制并重新添加文件、手动修补单个文件等?如果可能的话,我宁愿通过命令行,而不是P4Vgui来完成。

最佳答案

使用以下项创建分支规范:

Branch: luggage_beta
View:
    //software/my_luggage/main/... //software/my_luggage/beta/...

运行:
p4 unshelve -b luggage_beta -s 12345
p4 resolve

您将需要2013.1或更高版本的Performance服务器:
Major new functionality in 2013.1

    #538913 (Bug #36686) **
        Shelved changes may now be unshelved into different branches
        or related streams via 'p4 unshelve -b' and 'p4 unshelve -S'.
        See 'p4 help unshelve'.

关于linux - 将搁置的变更列表合并到分支中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44683544/

10-12 22:41