Whamcloud - gitweb
Try to avoid a race where two rpmbuilds on the same node are trying to stage
[fs/lustre-release.git] / build / cvsdiffclient
1 #!/bin/bash
2 # Put this script and cvs-modified-files.pl into your PATH (~bin is good) and 
3 #
4 # export CVSEDITOR=cvsdiffclient
5 #
6 # in your .bashrc and you will get a nice bunch of CVS commit reminders:
7 # <merge/land tag information>
8 # b=<bug_number>
9 # r=<reviewed by>
10 #
11 # Remember to remove the leading "CVS: " part of the comment before saving
12 # your commit comment if you want those entries to be saved.
13
14 [ -f .mergeinfo ] && . ./.mergeinfo
15
16 CVS_MODIFIED_FILES_PL=$(which cvs-modified-files.pl 2>/dev/null)
17 if [ -z "$CVS_MODIFIED_FILES_PL" ]; then
18     CVS_MODIFIED_FILES_PL=$(dirname $0)/cvs-modified-files.pl
19 fi
20 FILES=$($CVS_MODIFIED_FILES_PL $1)
21 TMP=`mktemp /tmp/cvslog-XXXXXXXX`
22 if [ -f $TMP ]; then
23         [ -f .mergeinfo ] && . .mergeinfo
24         [ -z "$PARENT" -a -f lustre/.mergeinfo ] && . lustre/.mergeinfo
25         if [ "$PARENT" ]; then
26                 [ "$OPERATION" ] || OPERATION=Update
27                 [ "$OPERWHERE" ] || OPERWHERE=from
28                 echo "CVS: $OPERATION $child $OPERWHERE $parent ($date)" >> $TMP
29         else
30                 [ -r CVS/Tag ] && TAG=CVS/Tag
31                 [ -z "$TAG" -a -r lustre/CVS/Tag ] && TAG=lustre/CVS/Tag
32                 [ "$TAG" ] && BRANCH="`sed 's/^T//' $TAG`" || BRANCH="HEAD"
33                 echo "CVS: Branch $BRANCH" >> $TMP
34         fi
35 cat - >> $TMP <<- EOF
36         CVS: Remove "CVS:" from start of lines that should be in commit message
37         CVS: did you update the ChangeLog for a bug fix?
38         CVS: did you update the hours spent in Bugzilla?
39         CVS: did you verify/update the HLD/DLD in CVS?
40         CVS: b=<bug>
41         CVS: r=<reviewed_by>
42 EOF
43
44         cat $1 >> $TMP
45         cp $TMP $1
46         rm $TMP
47 fi
48
49 if [ "${FILES:+have_files}"x = have_filesx ]; then
50   echo Diffing $1 : $FILES
51   cvs diff -wbBup $FILES 2>/dev/null | sed "s/^/CVS: /" >>$1
52 fi
53 #gnuclient $1 || vi $1
54 [ "$EDITOR" ] || EDITOR=vi
55
56 $EDITOR $1