[Python-apps-team] Bug#701168: mercurial: Backport improvement to vimdiff configuration
Pierre-Yves David
pierre-yves.david at logilab.fr
Fri Feb 22 11:07:35 UTC 2013
Package: mercurial
Version: 2.2.2-2
Severity: important
Tags: patch
During a merge conflict, vimdiff is very likely to be picked as the
default mergetool.
This have two majors issues
1) People tends to panic and just quit vimdiff. Vimdiff exit with a 0
returns code and Mercurial see the conflict as resolved when nothing
have been done. Ignoring change from on side of the merge.
We configure vimdiff with vimdiff.check=changed to detect this
situation. If the file did not changed we ask the user if the
conflict have been resolve.
2) People tends to not know whats going on and how to get out of
vimdiff.
We configure vimdiff so display a message when launched
hg merge conflict, type ":cq" to abort vimdiff
As a bonus it teach people the ":cq" command that quit vimdiff with a
non-zero exit code. Informing Mercurial that the conflict is
unresolved.
The previous configuration led to multiple and regular data loss. I
would like this config to be backported in wheezy.
Here is the patch to apply to mergetool.rc
--- /etc/mercurial/hgrc.d/mergetools.rc 2011-09-12 22:38:01.000000000 +0200
+++ /tmp/mergetools.hgrc 2013-02-22 12:01:19.628259820 +0100
@@ -15,7 +15,8 @@
gvimdiff.regname=path
gvimdiff.priority=-9
-vimdiff.args=$local $other $base
+vimdiff.args=$local $other $base -c 'echohl WarningMsg | echo "merge conflict detected, type \":cq\" to abort" | echohl'
+vimdiff.check=changed
vimdiff.priority=-10
merge.checkconflicts=True
-- System Information:
Debian Release: 6.0.6
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.32-5-amd64 (SMP w/16 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
--
Pierre-Yves David
http://www.logilab.fr/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/python-apps-team/attachments/20130222/4d4d7575/attachment.pgp>
More information about the Python-apps-team
mailing list