3 CONFLICTS=cvs-merge-conflicts
6 if [ -f .mergeinfo ] ; then
7 echo ".mergeinfo exists - clean up first"
11 if [ -f $CONFLICTS ] ; then
12 echo "$CONFLICTS exists - clean up first"
17 echo "This is phase 1 of merging branches. Usage: $0 parent child"
22 PARENT=`echo $parent | sed -e "s/^b_//" | tr "[a-z]" "[A-Z]"`
24 CHILD=`echo $child | sed -e "s/^b_//" | tr "[a-z]" "[A-Z]"`
25 date=`date +%Y%m%d_%H%M`
31 *) parent="b_$parent" ;;
39 if [ "$child" != "HEAD" -a "`cat CVS/Tag`" != "T$child" ]; then
40 echo "This script must be run within the $child branch"
44 cat << EOF > .mergeinfo
54 echo PARENT: $PARENT parent: $parent CHILD: $CHILD child: $child date: $date
56 echo -n "tagging $parent as '${PARENT}_${CHILD}_UPDATE_PARENT_$date' ...."
57 $CVS rtag -r $parent ${PARENT}_${CHILD}_UPDATE_PARENT_$date $module
59 echo -n "tagging $child as '${PARENT}_${CHILD}_UPDATE_CHILD_$date' ...."
60 $CVS rtag -r $child ${PARENT}_${CHILD}_UPDATE_CHILD_$date $module
62 echo "Updating: -j ${CHILD}_BASE -j ${PARENT}_${CHILD}_UPDATE_PARENT_$date ...."
63 $CVS update -j ${CHILD}_BASE -j ${PARENT}_${CHILD}_UPDATE_PARENT_$date -dP
65 echo -n "Recording conflicts in $CONFLICTS ..."
66 if $CVS update | grep '^C' > $CONFLICTS; then
67 echo "Conflicts found, fix before committing."
70 echo "No conflicts found"
73 echo "Test, commit and then run merge2.sh (no arguments)"