Perforce的责备

时间:2020-03-05 18:51:45  来源:igfitidea点击:

在命令行上,Perforce是否相当于svn的责任? " p4注释"不显示用户名-仅显示变更集编号(无祖先历史!)。

目前,我必须追溯祖先的代码,并与文件日志进行比较,而且必须有一种更简单的方法-也许是F / OSS实用程序?

解决方案

回答

我对blame命令不是很熟悉,但是我假设我们正在寻找谁更改了特定代码行。最简单的方法是使用p4win和p4v均可使用的Perforce的"延时视图"。

该工具使用注释和其他一些命令为我们提供随时间推移的代码行视图。我们可以看到谁修改了什么代码,何时从代码行中插入或者删除了代码等。

它不是命令行。我在帮助中进行了简要检查,似乎没有办法直接从p4win或者p4v调用中启动延时视图。可能有...我将进一步检查...

编辑:我检查了支持,我们可以通过p4v启动timelapse视图,如下所示:

p4v.exe -cmd "annotate //<path/to/file>"

HTH。

回答

尝试看一下我认为可以为我们提供所需大部分功能的一些工具:

1)Bob Sidebotham和Jonathan Kamens撰写的p4pr Perl脚本。

2)Emacs Perforce界面具有命令" p4-print-with-rev-history"(绑定到" C-x p V")。

回答

@ alanw123:p4pr接近我在寻找的东西,但它没有越过分支边界:

last if $type eq 'branch';

那是我尝试编写自己的实用程序时遇到的主要问题-我们无法(轻松地)知道行如何映射回分支的文件。