17 12
发新话题
打印

[推荐] 建议大家把用过的trigger和HOOK共享出来!( 此文章被查看:3287次,被回复:16篇!! )

cleartool mktrtype -nc -element -all -postop rmname -execwin "ccperl \\LM38-r\CCScript\file_log.pl" file_log

##########################################
#
#When rename or delete a element,record vob,user,element information in \\LM38-r\\CCFileLog\\vobname_delete.txt
#
##########################################

$vob=$ENV{CLEARCASE_VOB_PN};
$user=$ENV{CLEARCASE_USER};       
$element=$ENV{CLEARCASE_XPN};       
($sec,$min,$hour,$mday,$mon,$year,$wday,$ydat)=localtime();       
$mon+=1;
$year+=1900;

#print("$vob\n");
$cmd="echo $mday$mon$year,$user,$element >> \\\\LM38-r\\CCFileLog\\"."$vob"."_delete\.txt";
#print ("$cmd\n");
system($cmd);
本帖最近评分记录

© 本文为 小鱼 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

监控CQ/CC用户访问情况的脚本

附件

Montoir.rar (1.83 KB, 2006-12-27 12:47)

关于附件奖励, 下载次数 26, 使用阶层: 通用 , 推荐星级: , 出售价格: 2 金钱 , 你的购买价格: 2 金钱

本帖最近评分记录

© 本文为 selina 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
我选择,我喜欢

TOP

no_space trigger:
cleartool mktrtype -element -all -preop mkelem -exec "ccperl mkelem.pl" -nc NO_SPACE

mkelem.pl:

$RESERVED_TAG="$ENV{'CLEARCASE_PN'}";
if ($RESERVED_TAG =~ / /)
{
printf "Sorry,has space. \n" ;
exit 1;
}
本帖最近评分记录

© 本文为 lixiaolei000 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

怎么不对啊?
我建立了trigger以后,在rename的时候,弹出对话框说:trigger script for "ccfilelog"returned failed exit status.
引用:
原帖由 小鱼 于 2006-12-8 14:43 发表
cleartool mktrtype -nc -element -all -postop rmname -execwin "ccperl \\LM38-r\CCScript\file_log.pl" file_log

##########################################
#
#When rename or delete a e ...

© 本文为 phyllis 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

remove the empty branch

@rem= 'PERL for Windows - ccperl must be in search path
@echo off
ccperl %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
goto endofperl
@rem ';

###########################################
# Begin of Perl section

use strict;

my $idstring = $ENV{CLEARCASE_ID_STR};
my $element  = $ENV{CLEARCASE_XPN};
my $count = 0;
my $nidstring = $idstring;
my $string;
my $preidstring;
my $cmd;

  #printf "\n Trigger is fired $idstring...\n";
  $nidstring =~ s/\\0/XXXXXXXXXX/g;
  $count = ($nidstring =~ tr/X//);
  printf ("\n $nidstring Count : $count \n");

  if ($count == 10)
        {
        printf "\n Only version 0 \n";
        $nidstring = $idstring;
        $nidstring =~ s/\\main\\0/XXXXXXXXXX/g;
        $count = ($nidstring =~ tr/X//);
        printf ("\n $nidstring Count : $count \n");
        if ($count != 10)
                {
                $cmd = "cleartool describe -fmt \"%PVn\" \"$element\"";
                $preidstring = `$cmd`;            
                $element =~ s/\\0//g;
                $string = "cleartool rmbranch -force \"$element\"";
                system($string);
                printf "\n ToDo : $string \n";
                $nidstring =~ s/\\0//g;
                if ($preidstring =~ /\\0/)
                {
                  $nidstring =~ s/\\dev_CR.*//g;
                  $element =~ s/\\dev_CR.*//g;
                  $string = "cleartool rmbranch -force \"$element\"";
                  print "\n ToDo again: $string \n\n";
                  system($string);
                }
                }
        else
                {
                #We cannot delete branch main !!!
                }
        }
  else
        {
        #There is not only version 0 !!!
        }
#End of Perl section

__END__
:endofperl

© 本文为 demi_zheng 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

attach attribuild到某个文件版本

你需要先建一个attribute type。

@rem = ' PERL for Windows NT - ccperl must be in search path
@echo off
ccperl %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
goto endofperl
@rem ';

$CLEARCASE_FILE = $ENV{CLEARCASE_XPN};
system("cleartool desc -long $CLEARCASE_FILE > d:\\viewstore\\CR_num.txt");
open (IN, "d:\\viewstore\\CR_num.txt");
my $CR_num = "";
while (<IN>){
if (/CrmRequest/m){
        @CR = split / /,$_;
        #print "@CR\n";
        foreach $CR (@CR) {
                if ($CR =~ /BJMOB/m) {
                $CR =~ s/\"//g;
                $CR =~ s/BJMOB//;
                $CR =~ s/0+//;
                $CR =~ s/ //;
                chomp($CR);
                $status=0;
                $CR_num = CR."$CR";
                #last;
                }
        }
last;
}
}
close IN;

if ($status != 0)
        {
        exit $status
        }
else
        {
        system("cmd /c del d:\\viewstore\\CR_num.txt");

        $status = system("cleartool mkattr -replace CRNUM \"\\\"$CR_num\"\\\" $CLEARCASE_FILE");

        exit $status;
        }

__END__
:endofperl
本帖最近评分记录

© 本文为 demi_zheng 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

回复 16# 的帖子

还没看懂,能不能解释一下..

© 本文为 make 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
针对问题学习是最好的方法.
http://bbs.scmlife.com/?fromuid=81

TOP

 17 12
发新话题