tags:

views:

41

answers:

1

Hi all, i have a local and remote repository and have to find the difference between them by using byond compare or kdiff. i made changes in hgrc as well mercurial.ini file as below.

[extensions] hgext.extdiff=

[extdiff] cmd.bc3diff = C:\Program Files\Beyond Compare 3\BCompare.exe opts.bc3diff = -f '+next' '+execute "DirDiff ".argv(0)." ".argv(1)'

and tried in command prompt hg bc3diff source directory remote directory

but got abort source directory not under root......

please help me how could i solve above problem.

thanks,

+1  A: 

Mercurial operates on local repositories, and the diff and extdiff commands compare two different revisions in the same local repository (or the local working dir). The only built-in commands that compare local revisions to remote are incoming and outgoing (with optional --patch), but they don't launch external viewers.

You can use the rdiff extension to compare a local revision to a remote repo revision, but it doesn't seem to launch external tools.

The right/normal way to do this is to clone/pull both repos into one new clone and do local v. local comparisons there.

Ry4an
i tried with rdiffextension but got no output. i adding following lines:in .hgrc to enable the extension [extensions]rdiff=/path/to/rdiff.pyactually,i have to find the difference between two latest revision in remote directory or doing hg clone in local direcoty and find the difference files and changes accordingly in workdirectory.
deepakm
Cloning them locally is the right way to do it. If, however, they're adjacent revisions in history and the two-latest at that you can do `hg incoming -p --newest-first --limit 1 URL-OF-REMOTE`. That'll be a standard diff not your beyond-compare diff, but a good gui merge tool will display those w/ a few gaps too.
Ry4an