如何清理版本控制 $Id$ 注释
这可能是一个常见问题,但搜索引擎在搜索非字母数字字符方面非常糟糕。
我有一堆代码,其中包含标准版本控制 $Id$ 标签/注释。我需要一种简单的方法来从目录结构中的每个文件中删除(清理、剥离)所有这些标签。
具体来说,这是一个 PHP 脚本(具体来说是 phpBB),看起来像这样:
<?php
/**
*
* @package acp
* @version $Id: acp_attachments.php 8479 2008-03-29 00:22:48Z naderman $
*
*/
?>
我想要更改的行是这样的:
* @version $Id: acp_attachments.php 8479 2008-03-29 00:22:48Z naderman $
所以该行变为:
* @version $Id$
请记住,我使用的是 Windows,因此无法使用 Linux 命令进行查找/替换。但我确实有能力运行 PHP 来处理我的所有文件。
This might be a common question, but search engines are horrible at searching for non-alphanumeric characters.
I have a bunch of code which contains the standard version control $Id$ tag/comment. I need an easy way to remove (clean, strip), all of these tags from every file in a directory structure.
Specifically this is a PHP script (phpBB to be specific), and so looks like this:
<?php
/**
*
* @package acp
* @version $Id: acp_attachments.php 8479 2008-03-29 00:22:48Z naderman $
*
*/
?>
The line I want to change is this:
* @version $Id: acp_attachments.php 8479 2008-03-29 00:22:48Z naderman $
So the line becomes:
* @version $Id$
Keep in mind, I'm on Windows, so I can't use a Linux command for find/replace. But I do have the ability to run PHP to act on all my files.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在 Windows 上,您可以使用以下正则表达式来使用
grepWin
:Search为:
\$Id\: .+ \$$
替换为:
\$Id\$
注意: 首先对所有内容进行备份执行此操作之前的文件
On windows you can use
grepWin
using this regex:Search for:
\$Id\: .+ \$$
Replace with:
\$Id\$
NOTE: first make a backup of all files before doing this
你会使用 Perl 吗?这是我用于此目的的
cvs-clean
脚本:它将标准输入过滤为标准输出。这不是您所要求的完全;它将
$Id: blah $
更改为$Id:$
。删除s///
命令中的最后一个:
来更改它。如果您不能使用 Perl,则可以将其转换为 PHP 作为练习。
Can you use Perl? Here's my
cvs-clean
script that I use for this:It filters stdin to stdout. It's not exactly what you asked for; it changes
$Id: blah $
to$Id:$
. Delete the last:
in thes///
command to change that.If you can't use Perl, translating this to PHP is left as an exercise.