在 Perforce Visual Client 的所有架子中搜索文件
Search file in all shelves in Perforce Visual Client
我有很多带有自定义代码的货架变更列表。我想使用以下标准搜索当前工作区中的所有货架更改列表
- 按文件名过滤
- 在文件内容中搜索字符串
有人知道如何通过 Perforce 可视化客户端或命令行实现这一目标吗?
查找具有特定文件的搁置更改列表非常简单:
p4 changes -s shelved -c CLIENTNAME FILE
https://www.perforce.com/perforce/doc.current/manuals/cmdref/Content/CmdRef/p4_changes.html
在 shelf 中查找字符串稍微复杂一些,因为 p4 grep
不接受 -s shelved
参数,但您可以从更改列表中找到:
p4 -Ztag -F @=%change% changes -s shelved -c CLIENTNAME | p4 -x - grep -e EXPR
https://www.perforce.com/perforce/doc.current/manuals/cmdref/Content/CmdRef/p4_grep.html
不幸的是,p4 grep
输出不包括搁置的更改列表(这似乎是 IMO 的错误;它给出了搁置所基于的修订)所以如果将它缩小到一组文件(您可以将其输入到第一个查询中)不够具体,您可能需要编写更多脚本,但这些是基本构建块。
我有很多带有自定义代码的货架变更列表。我想使用以下标准搜索当前工作区中的所有货架更改列表
- 按文件名过滤
- 在文件内容中搜索字符串
有人知道如何通过 Perforce 可视化客户端或命令行实现这一目标吗?
查找具有特定文件的搁置更改列表非常简单:
p4 changes -s shelved -c CLIENTNAME FILE
https://www.perforce.com/perforce/doc.current/manuals/cmdref/Content/CmdRef/p4_changes.html
在 shelf 中查找字符串稍微复杂一些,因为 p4 grep
不接受 -s shelved
参数,但您可以从更改列表中找到:
p4 -Ztag -F @=%change% changes -s shelved -c CLIENTNAME | p4 -x - grep -e EXPR
https://www.perforce.com/perforce/doc.current/manuals/cmdref/Content/CmdRef/p4_grep.html
不幸的是,p4 grep
输出不包括搁置的更改列表(这似乎是 IMO 的错误;它给出了搁置所基于的修订)所以如果将它缩小到一组文件(您可以将其输入到第一个查询中)不够具体,您可能需要编写更多脚本,但这些是基本构建块。