.hgpostmerge.sh
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 19 Jul 2017 09:42:32 +0200
branchjv
changeset 17619 edb119820fcb
parent 13597 42278dc77ab3
permissions -rw-r--r--
Issue #154: Set window style using `#beToolWindow` to indicate that the minirunner window is kind of support tool rather than some X11 specific code (which does not work on Windows of course) See https://swing.fit.cvut.cz/projects/stx-jv/ticket/154
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13597
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
#!/bin/bash
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
# 
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
# A simple script that has to be run after hg merge due to 
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
# missing renames in history
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
#
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
#
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
MY_BRANCH=$(hg branch)
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
BAD_FILES=$(ls Tools_[A-Z]*.st)
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
LAST_MERGE_REV=$(hg log -r "children(ancestor(default, $MY_BRANCH)) and merge() and branch($MY_BRANCH)" --template "{node|short}\n")
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
LAST_MERGED_REV=$(hg log -r $LAST_MERGE_REV --template "{parents}" | cut -d ' ' -f 2 | cut -d ':' -f 2)
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
echo "Last merge with default was $LAST_MERGE_REV"
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
echo "Last merged default     was $LAST_MERGED_REV:"
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
hg log -r $LAST_MERGED_REV
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
for bad_file in $BAD_FILES; do
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
	good_file=$(echo $bad_file | sed -e 's/_/__/g')
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
	echo "Fixing $bad_file -> $good_file"
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
	default_last_change_rev=$(hg log -b default $bad_file -l 1 --template "{node|short}\n")
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
	if [ "$default_last_change_rev" != "$LAST_MERGED_REV" ]; then
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
		echo " Changed since last merge (latest is $default_last_change_rev)"
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
		cp $good_file $good_file.orig
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
		cp $good_file $good_file.local
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
		hg cat -r "$default_last_change_rev" "$bad_file" > "$good_file.other"
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
		hg cat -r "$LAST_MERGED_REV" "$bad_file" > "$good_file.base"
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
		hg resolve --unmark "$good_file"
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
	fi
42278dc77ab3 Added .hgpostmerge.sh script to do a correct merge...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
done