Mercurial > hg
view hgeditor @ 1645:c6ffedc4f11b
add removed files to the changelog file list
- this should allow better detection of removed file
when walking in the history (like hg log)
it doesn't help for the fast path of hg log where
we only look at the filelog
- users of the changelog file list shouldn't assume
anymore that the file still exist (anyway it won't
be found in the manifest like in 5ecf05541e11)
- fix the tests (some hashes changed)
author | Benoit Boissinot <benoit.boissinot@ens-lyon.org> |
---|---|
date | Sun, 29 Jan 2006 08:38:31 +1300 |
parents | f93fde8f5027 |
children | 20b621154e17 |
line wrap: on
line source
#!/bin/sh # # This is an example of using HGEDITOR to create of diff to review the # changes while commiting. # If you want to pass your favourite editor some other parameters # only for Mercurial, modify this: case "${EDITOR}" in "") EDITOR="vi" ;; emacs) EDITOR="$EDITOR -nw" ;; gvim|vim) EDITOR="$EDITOR -f -o" ;; esac HGTMP="" cleanup_exit() { rm -rf "$HGTMP" } # Remove temporary files even if we get interrupted trap "cleanup_exit" 0 # normal exit trap "exit 255" 1 2 3 6 15 # HUP INT QUIT ABRT TERM HGTMP="${TMPDIR-/tmp}/hgeditor.$RANDOM.$RANDOM.$RANDOM.$$" (umask 077 && mkdir "$HGTMP") || { echo "Could not create temporary directory! Exiting." 1>&2 exit 1 } ( cd "`hg root`" grep '^HG: changed' "$1" | cut -b 13- | while read changed; do hg diff "$changed" >> "$HGTMP/diff" done ) cat "$1" > "$HGTMP/msg" CHECKSUM=`md5sum "$HGTMP/msg"` if [ -s "$HGTMP/diff" ]; then $EDITOR "$HGTMP/msg" "$HGTMP/diff" || exit $? else $EDITOR "$HGTMP/msg" || exit $? fi echo "$CHECKSUM" | md5sum -c >/dev/null 2>&1 && exit 13 mv "$HGTMP/msg" "$1" exit $?