如果这个配置管理经理不错的话,愿意指点,至少可以学到很多东西。
明白了,谢谢
Perforce 打 label 要分两步,1 是创建 label,2 是 tag 文件,所以应该在 tag 文件之后再锁上这个 label
所以代码应该是下面这样,否则只是创建了 label,但是 label 里边没有文件:
my $build_number=889; my $label_name ="Project_XXY_".$build_number; system ("p4 -s tag -a -l $label_name //help/...");
open my $IN, '| p4 label -i' or die $!; open my $OUT, "p4 label -o $label_name |" or die $!;
while (my $line = <$OUT>) { $line =~ s/unlocked/locked/ if $line =~ /^Options/; print $IN $line; }
close $IN; close $OUT;
把 label 设成了一个变量,实验成功了。谢谢指点。
[code] my $build_number=889; my $label_name ="Project_XXY_".$build_number;
open my $IN, '| p4 label -i' or die $!; open my $OUT, "p4 label -o $label_name |" or die $!;
while (my $line = <$OUT>) { $line =~ s/unlocked/locked/ if $line =~ /^Options/; print $IN $line; }
close $IN; close $OUT;
[/code]
输出如下:
[code] H:\Projects\p4perl>perl p4locklabel.pl Label Project_XXY_889 saved.
H:\Projects\p4perl>[/ [/code]
你这个用到了 linux 下的 sed 命令,windows 下面没有。请问如何解决?
有没有一种与平台无关的方法?如果我要用在 Perl 脚本里,windows,linux 下都可以用?该怎么半?