Command line 使用旧的perforce创建修补程序

Command line 使用旧的perforce创建修补程序,command-line,perforce,Command Line,Perforce,我面临着在使用旧版本perforce的开发人员之间共享部分代码更改的问题 那么,如何使用较旧的perforce客户端(从更改列表或几个更改的文件)创建修补程序呢?最好从命令行使用一个命令 谢谢 客户端版本:2011.1 服务器版本:2007.3 事实上,在2009.2版中添加了“diff-du”命令,用于生成统一的diff格式输出。(有关Perforce服务器的历史记录,请参阅) 2007.3版现在已经很旧了。为什么不升级?您至少可以同步源代码树的一个干净副本,并手动运行diff以生成修补程序

我面临着在使用旧版本perforce的开发人员之间共享部分代码更改的问题

那么,如何使用较旧的perforce客户端(从更改列表或几个更改的文件)创建修补程序呢?最好从命令行使用一个命令

谢谢

  • 客户端版本:2011.1
  • 服务器版本:2007.3

事实上,在2009.2版中添加了“diff-du”命令,用于生成统一的diff格式输出。(有关Perforce服务器的历史记录,请参阅)


2007.3版现在已经很旧了。为什么不升级?

您至少可以同步源代码树的一个干净副本,并手动运行
diff
以生成修补程序。如果它只涉及“几个已更改的文件”,那就不需要太多工作。

显然,这是perforce中实现的一个新功能,尽管看起来是一件基本的事情。这似乎是一个客户端特性,显然p4Eclipse不知道如何创建补丁,除非您安装了一个较新的p4客户端。这让我感到困惑,因为这是一个保存统一差异的问题。IntelliJ并不介意Performce中缺少差异支持,因为它使用自己的工具生成差异。太糟糕了,它不可扩展,因为它只在最终版本中可用。这涉及到创建一个新的工作区,如果必须经常这样做,这可能会很乏味。此外,每次创建修补程序时,都需要同步新的工作区。@劳尔:您可以编写一个脚本,提取给定变更集中的每个编辑文件,运行
p4 print file#have>/tmp/file
,然后对每个文件运行
diff-du
。(添加的文件需要额外小心。)