ITPub博客

首页 > 应用开发 > IT综合 > CVS-RCS(8)(转)

CVS-RCS(8)(转)

原创 IT综合 作者:post0 时间:2007-08-11 12:59:12 0 删除 编辑
CVS-RCS(8)(转)[@more@]

4.12 sfreeze

注意 : Korn shell /bin/ksh 在你从Linux CD-ROM 安装 pdksh*.rpm 时就会产

生

请把他存成一般文字档并改变存取权限 chmod a+rx

_________________________________________________________________

#!/bin/ksh

# CVS program sfreeze

# Program to freeze and cut out the release of source tree from CVS

cmdname=`basename $0`

Usage()

{

print " Usage: $cmdname symbolic_tag "

print " For example :- "

print " cd $HOME"

print " $cmdname REVISION_1 mesa"

print "To see the list of revisons do -"

print "slog and see the symbolic name and do -"

print "cvs history -T"

print " To create a branch off-shoot from main trunk, use"

print "the -b and -r options which makes the tag a branch tag. This is"

print "useful for creating a patch to previously released software"

print "For example :- "

print " cd $HOME"

print " cvs rtag -b -r REVISION_1 REVISION_1_1 mesa"

print " "

# print " Tag info is located at $CVSROOT/CVSROOT/taginfo,v"

# print "You can do - cd $HOME; sget CVSROOT"

# print "to see this file"

exit

}

# Command getopt will not supported in next major release.

# Use getopts instead.

#while getopts r: ii

#do

# case $ii in

# r) FLAG1=$ii; OARG1="$OPTARG";;

# ?) Usage; exit 2;;

# esac

#done

#shift ` expr $OPTIND - 1 `

#echo FLAG1 = $FLAG1 , OARG1 = $OARG1

if [ $# -lt 2 ]; then

Usage

fi

if [ ! -d $2 ]; then

print " Error: Second argument $2 is not a directory!"

print " Aborting $cmdname...."

print " "

exit

fi

# cvs rtag symbolic_tag

cvs rtag $1 $2

print " Done $cmdname. $cmdname successful"

_________________________________________________________________

4.13 saddtree

注意 : Korn shell /bin/ksh 在你从Linux CD-ROM 安装 pdksh*.rpm 时就会产

生

请把他存成一般文字档并改变存取权限 chmod a+rx。

_________________________________________________________________

#!/bin/ksh

################################################################

# Sample Program to checkin a directory tree (let's say SAMP) into CVS

# Note that if SAMP directory is not in CVS than you would use sadd

# command and -

# cd SAMP; cvs import SAMP V_1_0 R_1_0

# After running this program do -

# cd $HOME/foo/SAMP

# cvs import foo/SAMP V1_0 Rev_1_0

################################################################

hme=` echo $HOME | cut -f1 -d' ' `

if [ "$hme" = "" ]; then

print " Error: $HOME is not set!! "

exit

fi

sampdir=$hme/foo/SAMP

check_out_files()

{

# Now check out the files

tmp2f=$hme/tmp2.baksamp.sh

cd $hme

m -rf foo/SAMP

cvs -w checkout foo/SAMP

cd $hme/foo

find SAMP -type f -print > $tmp2f

cd $hme

for ii in `cat $tmp2f`

do

iidir=`dirname $ii`

iifile=`basename $ii`

if [ "$iifile" = "Root" -o "$iifile" = "Repository" -o "$iifile

" = "Entries" ]; then

continue

fi

jjdir=` echo $iidir | cut -d'/' -f2-1000 `

cp $hme/foo/SAMP.tobe/$jjdir/$iifile $hme/foo/$iidir/$iifile

echo "cp $hme/foo/SAMP.tobe/$jjdir/$iifile $hme/foo/$iidir/$ii

file "

cvs add foo/$iidir/$iifile

done

print

print "================================================"

print " Now run cvs commit foo/SAMP"

print " After commit. Do - "

print " cd foo; rm -rf SAMP and "

print " get fresh copy, sget SAMP"

print " Verify with slog filename.samp to see new revision"

print "================================================"

print

}

check_out_files

_________________________________________________________________

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8225414/viewspace-945083/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: CVS-RCS(7)(转)
下一篇: CVS使用手册(转)
请登录后发表评论 登录
全部评论
  • 博文量
    2018
  • 访问量
    8226492