Whamcloud - gitweb
Add new "repalce" scripts, mainly for moving a new branch to HEAD
[fs/lustre-release.git] / build / replace2.sh
diff --git a/build/replace2.sh b/build/replace2.sh
new file mode 100755 (executable)
index 0000000..71a03fd
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/sh -e 
+
+CVS=cvs
+
+if [ ! -f .mergeinfo ] ; then
+    echo ".mergeinfo doesn't exist - exit"
+    exit 
+fi
+
+. .mergeinfo
+
+if [ "$OPERATION" -ne "Replace" ] ; then
+    echo "OPERATION must be Replace - is $OPERATION"
+    echo "You should probably be running ${OPERATION}2.sh"
+    exit
+fi
+
+if [ -f "$CONFLICTS" ] ; then
+    echo "$CONFLICTS exists - clean up first"
+    cat $CONFLICTS
+    exit 
+fi
+
+cvs update $dir 2>&1 | grep "^M" && echo "uncommitted changes" && exit 1
+
+# Tag parent
+echo -n "Tagging as ${CHILD}_REPLACED_${PARENT}_$date ..."
+$CVS tag -F ${CHILD}_REPLACED_${PARENT}_$date $dir
+echo "done"
+# In case someone tries to re-land later
+echo -n "Tagging as ${CHILD}_BASE ..."
+$CVS tag -F ${CHILD}_BASE $dir
+
+echo "saving .mergeinfo as .mergeinfo-$date"
+mv .mergeinfo .mergeinfo-$date
+echo "done"