3 # This script updates the entire tree, saves the output in cvs.out,
4 # and then separately prints out the files that had merge conflicts,
5 # those that were merged successfully, and those that are new.
6 # Note that this script uses "cvs update -P -d".
9 # cvsupdate ## normal run
10 # cvsupdate -n ## run grep commands on output of the last run of cvs
11 # cvsupdate -h ## usage information
16 alias usage
'echo "USAGE: $0:t [-h][-n]"; set pstatus = 1; goto cleanup'
21 while ( !( $?options_done
) && ($#argv > 0))
26 set doit
= 0; shift argv
; breaksw
28 set printnew
= 1; shift argv
; breaksw
30 set options_done
; breaksw
35 /bin
/mv -f cvs.out cvs.out.bak
>&/dev
/null
36 cvs update
-P -d >& cvs.out
37 ## if ($status != 0) then
38 ## echo "ERROR: CVS update failed: "
43 echo ""; echo "NOT UPDATING FILES. RESULTS FROM LAST RUN:"; echo ""
46 echo ""; echo " FILES UPDATED:"
49 echo ""; echo " UPDATE CONFLICTS OCCURRED FOR THE FOLLOWING FILES:"
52 echo ""; echo " NEW FILES THAT NEED TO BE COMMITTED:"
55 echo ""; echo " FILES REMOVED FROM YOUR DIRECTORY:"
56 grep 'no longer in the repository' cvs.out
58 echo ""; echo " FILES SUCCESSFULLY MERGED (or locally modified):"
61 echo ""; echo " NEW FILES AND DIRECTORIES:"
62 if ($printnew != 0) then
63 grep '^\?' cvs.out |
& grep -v '\.bc' |
grep -v Updating |
grep -v cvsup |
grep -v 'cvs.out' |
grep -v gnumake.out |
grep -v '\.mc$' |
grep -v '\.s$' |
grep -v '\.native'
65 echo '(USE "cvsupdate -n -new" TO SEE NEW FILES AND DIRECTORIES.)'
71 #=========================================================
72 # CODE TO BE EXECUTED IF INTERRUPT IS RECEIVED
73 #=========================================================