ANN: HgShell 0.1, a context menu extension for Windows

Ignacio Alvarez dev at xentient.com
Wed Jul 11 23:17:52 CDT 2007


Mercurial, Qct, and KDiff3 are installed in subdirectories of HgShell,
so there shouldn't be any conflicts with your existing installations. To
use the shell extension with your existing installation of Mercurial,
just take a look at the Mercurial.ini file inside the
"HgShell\Mercurial" subdirectory for any configuration changes you might
need to make.

Specifically, HgShell expects the qct command to be available, as well
as fetch, graphlog, and kdiff3. The shell extension also uses several
scripts inside the "HgShell\scripts" folder that you might want to
customize. For example, the script for the "Show log" command is limited
to three log entries, but you can easily modify it to show the last 10
by editing the file hg_log.bat:

hg log -l 10 %1
pause


Thank you.

Ignacio.


Sean wrote:
> Ignacio,
>
> Thanks for the update.
>
> As I already have a all three of the packaged apps, installed, I am
> reluctant to re-install and configure them.
>
> Is it possible to just manually register hgshell.dll.
>
> Are there any registry keys, config files required to get it all working ?
>
> Thanks
>
> Sean
>
> On 7/12/07, *Ignacio Alvarez * <dev at xentient.com
> <mailto:dev at xentient.com>> wrote:
>
>     Additional comments on the extension:
>
>     - I just realized that the glog command doesn't accept a file
>     parameter, so "hg glog readme" won't display only the log entries
>     for the readme file. I've just uploaded version 0.1.1 of the
>     extension to work around this problem. The extension now uses "hg
>     log" if the "Show log" command is invoked on a file, and "hg glog"
>     if invoked on a folder.
>
>     - The "Clone repository" command automatically determines the name
>     of the repository from the URL you give it. For example, if you
>     clone http://selenic.com/repo/hg, the repository is named hg, and
>     if you clone http://AMD:8000, the repository is named AMD_8000.
>
>     - When cloning a repository served using the "Run server" command,
>     you can append a name to the URL to give the repository a specific
>     name. For example, http://AMD:8000/RepoName.
>
>     - By default, KDiff3 makes backups of the files it overwrites when
>     merging. You can deselect this option using the
>     "Settings->Configure KDiff3" menu command if you don't want your
>     repositories filled with ".orig" files. The option can be found at
>     the bottom of the "Directory Merge" tab:
>
>     http://xentient.com/images/SNAG-00007.png
>
>     - The "Push" command always does a pull first (a fetch actually)
>     to avoid the problem of creating multiple heads on the server it
>     is pushing its changes to.
>
>     Thank you.
>
>     Ignacio.
>
>
>     Ignacio Alvarez wrote:
>>     A few weeks back, I wrote a simple context menu extension for
>>     integrating Mercurial with Windows Explorer:
>>
>>     http://xentient.com/images/SNAG-00006.png
>>
>>     I've been waiting for some free time to write a basic tutorial on
>>     how to use the extension before releasing it, but I've figured
>>     I'm going to have to wait much longer, so I'm releasing it as is,
>>     in case anyone finds it useful:
>>
>>     http://xentient.com/setups/hgshell-setup.zip
>>
>>     The setup program will also install and configure Mercurial, Qct,
>>     and KDiff3.
>>
>>     The extension basically works by passing the appropriate
>>     arguments to the hg command, either directly or through batch
>>     files stored in the "hgshell\scripts" folder.
>>
>>     The "Clone repository" command works a bit different than you
>>     might expect. If you invoke it on a repository on your hard disk,
>>     it will automatically create a clone and append a number to the
>>     name. For example, if you clone "c:\repo" it will create a
>>     repository named "c:\repo.1" and if you clone it again it will
>>     create a repository named "c:\repo.2". If you invoke the clone
>>     command on a folder that isn't a repository, it will display a
>>     dialog where you can enter the URL of the repository you wish to
>>     clone.
>>
>>     The extension stores its own settings in a file named
>>     ".hgoptions" inside the repository. This file shouldn't be
>>     tracked by Mercurial, since it's rewritten constantly and will
>>     most likely be different for each user.
>>
>>     Thank you.
>>
>>     Ignacio.
>>
>>     ------------------------------------------------------------------------
>>
>>     _______________________________________________
>>     Mercurial mailing list
>>      [send email to Mercurial at selenic.com via gmail] 
>>     Mercurial at selenic.com <mailto:Mercurial at selenic.com>
>>     http://selenic.com/mailman/listinfo/mercurial
>>       
>
>
>     _______________________________________________
>     Mercurial mailing list
>     [send email to Mercurial at selenic.com via gmail]
>     Mercurial at selenic.com <mailto:Mercurial at selenic.com>
>     http://selenic.com/mailman/listinfo/mercurial
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://selenic.com/pipermail/mercurial/attachments/20070711/b6d54dc6/attachment.htm 


More information about the Mercurial mailing list