Mercurial > hg
view mercurial/defaultrc/mergetools.rc @ 47072:4c041c71ec01
revlog: introduce an explicit tracking of what the revlog is about
Since the dawn of time, people have been forced to rely to lossy introspection
of the index filename to determine what the purpose and role of the revlog they
encounter is. This is hacky, error prone, inflexible, abstraction-leaky,
<insert-your-own-complaints-here>.
In f63299ee7e4d Raphaël introduced a new attribute to track this information:
`revlog_kind`. However it is initialized in an odd place and various instances
end up not having it set. In addition is only tracking some of the information
we end up having to introspect in various pieces of code.
So we add a new attribute that holds more data and is more strictly enforced.
This work is done in collaboration with Raphaël.
The `revlog_kind` one will be removed/adapted in the next changeset. We expect
to be able to clean up various existing piece of code and to simplify coming
work around the newer revlog format.
Differential Revision: https://phab.mercurial-scm.org/D10352
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Tue, 06 Apr 2021 05:20:24 +0200 |
parents | dbc462e34e92 |
children | a6efc1f1a73b |
line wrap: on
line source
# Some default global settings for common merge tools [merge-tools] ; The Araxis Merge tool is configured to work with newer versions of Araxis Merge ; if you are using Araxis Merge 2008 or earlier, create a [merge-tools] section ; in your mercurial.ini file, and add one of the two following "araxis.executable" ; lines, depending on whether you have installed a 32 or a 64 bit version ; of Araxis Merge and whether you are on a 32 or 64 bit version of windows ; ;araxis.executable=${ProgramFiles}/Araxis/Araxis Merge/ConsoleCompare.exe ;araxis.executable=${ProgramFiles(x86)}/Araxis/Araxis Merge/ConsoleCompare.exe ; ; Please remember to remove the leading ";" to uncomment the line ; araxis.args=/3 /a2 /wait /merge /title1:"Other" /title2:"Base" /title3:"Local :"$local $other $base $local $output araxis.binary=True araxis.checkconflicts=True araxis.diffargs=/2 /wait /title1:$plabel1 /title2:$clabel $parent $child araxis.gui=True araxis.priority=-2 araxis.regappend=\ConsoleCompare.exe araxis.regkey=SOFTWARE\Classes\TypeLib\{46799e0a-7bd1-4330-911c-9660bb964ea2}\7.0\HELPDIR ; Linux version of BeyondCompare 3 and 4 (dirdiff is version 4 only) bcompare.args=$local $other $base -mergeoutput=$output -ro -lefttitle=$labellocal -centertitle=$labelbase -righttitle=$labelother -outputtitle=merged -automerge -reviewconflicts -solo bcompare.diffargs=-lro -lefttitle=$plabel1 -righttitle=$clabel -solo -expandall $parent $child bcompare.gui=True bcompare.priority=-1 ; OS X version of Beyond Compare bcomposx.args=$local $other $base -mergeoutput=$output -ro -lefttitle=$labellocal -centertitle=$labelbase -righttitle=$labelother -outputtitle=merged -automerge -reviewconflicts -solo bcomposx.diffargs=-lro -lefttitle=$plabel1 -righttitle=$clabel -solo -expandall $parent $child bcomposx.executable = /Applications/Beyond Compare.app/Contents/MacOS/bcomp bcomposx.gui=True bcomposx.priority=-1 ; Windows version of BeyondCompare 3 beyondcompare3.args=$local $other $base $output /ro /lefttitle=$labellocal /centertitle=$labelbase /righttitle=$labelother /automerge /reviewconflicts /solo beyondcompare3.diffargs=/lro /lefttitle=$plabel1 /righttitle=$clabel /solo /expandall $parent $child beyondcompare3.gui=True beyondcompare3.priority=-2 beyondcompare3.regkey=Software\Scooter Software\Beyond Compare 3 beyondcompare3.regkeyalt=Software\Wow6432Node\Scooter Software\Beyond Compare 3 beyondcompare3.regname=ExePath ; Windows version of BeyondCompare 4 beyondcompare4.args=$local $other $base /mergeoutput=$output /ro /lefttitle=$labellocal /centertitle=$labelbase /righttitle=$labelother /outputtitle=merged /automerge /reviewconflicts /solo beyondcompare4.diffargs=/lro /lefttitle=$plabel1 /righttitle=$clabel /solo /expandall $parent $child beyondcompare4.gui=True beyondcompare4.premerge=False beyondcompare4.priority=-1 beyondcompare4.regkey=Software\Scooter Software\Beyond Compare 4 beyondcompare4.regkeyalt=Software\Wow6432Node\Scooter Software\Beyond Compare 4 beyondcompare4.regname=ExePath diffmerge.args=-nosplash -merge -title1=$labellocal -title2=merged -title3=$labelother $local $base $other -result=$output diffmerge.check=changed diffmerge.diffargs=--nosplash --title1=$plabel1 --title2=$clabel $parent $child diffmerge.gui=True diffmerge.priority=-7 diffmerge.regkey=Software\SourceGear\SourceGear DiffMerge\ diffmerge.regkeyalt=Software\Wow6432Node\SourceGear\SourceGear DiffMerge\ diffmerge.regname=Location diffuse.args=$local $base $other diffuse.diffargs=$parent $child diffuse.gui=True diffuse.priority=-3 ecmerge.args=$base $local $other --mode=merge3 --title0=$labelbase --title1=$labellocal --title2=$labelother --to=$output ecmerge.diffargs=$parent $child --mode=diff2 --title1=$plabel1 --title2=$clabel ecmerge.gui=True ecmerge.regkey=Software\Elli\xc3\xa9 Computing\Merge ecmerge.regkeyalt=Software\Wow6432Node\Elli\xc3\xa9 Computing\Merge # editmerge is a small script shipped in contrib. # It needs this config otherwise it behaves the same as internal:local editmerge.args=$output editmerge.check=changed editmerge.premerge=keep filemerge.args=-left $other -right $local -ancestor $base -merge $output filemerge.executable=/Developer/Applications/Utilities/FileMerge.app/Contents/MacOS/FileMerge filemerge.gui=True filemergexcode.args=-left $other -right $local -ancestor $base -merge $output filemergexcode.executable=/Applications/Xcode.app/Contents/Applications/FileMerge.app/Contents/MacOS/FileMerge filemergexcode.gui=True gpyfm.gui=True gvimdiff.args=--nofork -d -g -O $local $other $base gvimdiff.diffargs=--nofork -d -g -O $parent $child gvimdiff.priority=-9 gvimdiff.regkey=Software\Vim\GVim gvimdiff.regkeyalt=Software\Wow6432Node\Vim\GVim gvimdiff.regname=path kdiff3.args=--auto --L1 $labelbase --L2 $labellocal --L3 $labelother $base $local $other -o $output kdiff3.diffargs=--L1 $plabel1 --L2 $clabel $parent $child kdiff3.fixeol=True kdiff3.gui=True kdiff3.regappend=\kdiff3.exe kdiff3.regkey=Software\KDiff3 kdiff3.regkeyalt=Software\Wow6432Node\KDiff3 meld.args=--label=$labellocal $local --label='merged' $base --label=$labelother $other -o $output --auto-merge meld.check=changed meld.diffargs=-a --label=$plabel1 $parent --label=$clabel $child meld.gui=True merge.check=conflicts merge.priority=-100 p4merge.args=$base $local $other $output p4merge.diffargs=$parent $child p4merge.gui=True p4merge.priority=-8 p4merge.regappend=\p4merge.exe p4merge.regkey=Software\Perforce\Environment p4merge.regkeyalt=Software\Wow6432Node\Perforce\Environment p4merge.regname=P4INSTROOT p4mergeosx.args = $base $local $other $output p4mergeosx.diffargs=$parent $child p4mergeosx.executable = /Applications/p4merge.app/Contents/MacOS/p4merge p4mergeosx.gui = True p4mergeosx.priority=-8 tkdiff.args=$local $other -a $base -o $output tkdiff.diffargs=-L $plabel1 $parent -L $clabel $child tkdiff.gui=True tkdiff.priority=-8 tortoisemerge.args=/base:$base /mine:$local /theirs:$other /merged:$output tortoisemerge.check=changed tortoisemerge.diffargs=/base:$parent /mine:$child /basename:$plabel1 /minename:$clabel tortoisemerge.gui=True tortoisemerge.priority=-8 tortoisemerge.regkey=Software\TortoiseSVN tortoisemerge.regkeyalt=Software\Wow6432Node\TortoiseSVN UltraCompare.args = $base $local $other -title1 base -title3 other UltraCompare.binary = True UltraCompare.check = conflicts,changed UltraCompare.diffargs=$child $parent -title1 $clabel -title2 $plabel1 UltraCompare.gui = True UltraCompare.priority = -2 UltraCompare.regkey=Software\Microsoft\Windows\CurrentVersion\App Paths\UC.exe UltraCompare.regkeyalt=Software\Wow6432Node\Microsoft\Windows\CurrentVersion\App Paths\UC.exe vimdiff.args=$local $other $base -c 'redraw | echomsg "hg merge conflict, type \":cq\" to abort vimdiff"' vimdiff.check=changed vimdiff.priority=-10 winmerge.args=/e /x /wl /ub /dl $labelother /dr $labellocal $other $local $output winmerge.check=changed winmerge.diffargs=/r /e /x /ub /wl /dl $plabel1 /dr $clabel $parent $child winmerge.gui=True winmerge.priority=-10 winmerge.regkey=Software\Thingamahoochie\WinMerge winmerge.regkeyalt=Software\Wow6432Node\Thingamahoochie\WinMerge\ winmerge.regname=Executable xxdiff.args=--show-merged-pane --exit-with-merge-status --title1 $labellocal --title2 $labelbase --title3 $labelother --merged-filename $output --merge $local $base $other xxdiff.diffargs=--title1 $plabel1 $parent --title2 $clabel $child xxdiff.gui=True xxdiff.priority=-8