Mercurial > hg
view contrib/editmerge @ 24788:b8c3a0994b37
largefiles: always consider updatelfiles 'checked' parameter set
mergeupdate already set the flag to update all. This will thus only change
overriderevert and scmutilmarktouched ... where the flag effectually also were
true. The test coverage thus shows no change.
As the flag always is set, it is removed.
This is mainly a change for keeping the code simple and consistent and correct,
but it should also make it faster in many cases.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Sat, 17 Jan 2015 03:34:57 +0100 |
parents | 864c56cb8945 |
children | 4b0fc75f9403 |
line wrap: on
line source
#!/usr/bin/env bash # A simple script for opening merge conflicts in the editor. # Use the following Mercurial settings to enable it. # # [ui] # merge = editmerge # # [merge-tools] # editmerge.args=$output # editmerge.check=changed # editmerge.premerge=keep FILE=$1 getlines() { grep -n "<<<<<<" $FILE | cut -f1 -d: } # editor preference loosely based on http://mercurial.selenic.com/wiki/editor # hg showconfig is at the bottom though, since it's slow to run (0.15 seconds) ED=$HGEDITOR if [ "$ED" = "" ] ; then ED=$VISUAL fi if [ "$ED" = "" ] ; then ED=$EDITOR fi if [ "$ED" = "" ] ; then ED=$(hg showconfig ui.editor) fi if [ "$ED" = "" ] ; then echo "merge failed - unable to find editor" exit 1 fi if [ "$ED" = "emacs" ] || [ "$ED" = "nano" ] || [ "$ED" = "vim" ] ; then FIRSTLINE=$(getlines | head -n 1) PREVIOUSLINE="" # open the editor to the first conflict until there are no more # or the user stops editing the file while [ ! "$FIRSTLINE" = "" ] && [ ! "$FIRSTLINE" = "$PREVIOUSLINE" ] ; do $ED +$FIRSTLINE $FILE PREVIOUSLINE=$FIRSTLINE FIRSTLINE=$(getlines | head -n 1) done else $ED $FILE fi # get the line numbers of the remaining conflicts CONFLICTS=$(getlines | sed ':a;N;$!ba;s/\n/, /g') if [ ! "$CONFLICTS" = "" ] ; then echo "merge failed - resolve the conflicts (line $CONFLICTS) then use 'hg resolve --mark'" exit 1 fi exit 0