将搁置的更改列表合并到分支中
Merging shelved changlist into branch
我的一位同事有一个搁置的更改列表 (CL#12345
),其中包括编辑和新(添加)文件。所有文件都位于:
//software/my_luggage/main/...
我想 unshelve
这些更改,并将它们应用到位于:
的分支
//software/my_luggage/beta/...
我尝试通过以下方式生成并手动应用补丁:
p4 describe -S 12345 > ~/tmp.patch
但是,这有两个问题:
- 补丁需要转换为通用的 Unix diff 格式,类似于
p4 diff -du
的输出(我有一个脚本)。
p4 describe
操作的输出不包含 new/added 文件中的内容。
有没有简单的方法 p4 unshelve
搁置的更改列表并修改搁置的目标 "applied",或者我是否必须手动复制并重新添加文件,手动修补个人文件等? 如果可能的话,我更愿意通过命令行而不是 P4V
GUI 来完成。
制定分支规范:
Branch: luggage_beta
View:
//software/my_luggage/main/... //software/my_luggage/beta/...
运行:
p4 unshelve -b luggage_beta -s 12345
p4 resolve
您将需要 2013.1 或更高版本的 Perforce 服务器:
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'.
我的一位同事有一个搁置的更改列表 (CL#12345
),其中包括编辑和新(添加)文件。所有文件都位于:
//software/my_luggage/main/...
我想 unshelve
这些更改,并将它们应用到位于:
//software/my_luggage/beta/...
我尝试通过以下方式生成并手动应用补丁:
p4 describe -S 12345 > ~/tmp.patch
但是,这有两个问题:
- 补丁需要转换为通用的 Unix diff 格式,类似于
p4 diff -du
的输出(我有一个脚本)。 p4 describe
操作的输出不包含 new/added 文件中的内容。
有没有简单的方法 p4 unshelve
搁置的更改列表并修改搁置的目标 "applied",或者我是否必须手动复制并重新添加文件,手动修补个人文件等? 如果可能的话,我更愿意通过命令行而不是 P4V
GUI 来完成。
制定分支规范:
Branch: luggage_beta
View:
//software/my_luggage/main/... //software/my_luggage/beta/...
运行:
p4 unshelve -b luggage_beta -s 12345
p4 resolve
您将需要 2013.1 或更高版本的 Perforce 服务器:
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'.