Tylo
Tylo

Reputation: 806

Can I tell MacHG to use a specific version of Mercurial?

I would like to use a specific version of Mercurial for plugin reasons. Is there a way I can tell MacHG to use a specific Mercurial version. I know that it comes with its own, but I would like it to use 'mine', basically.

Upvotes: 0

Views: 37

Answers (1)

dimo414
dimo414

Reputation: 48824

Yes, it's documented in the project's source code:

Replacing the Mercurial version is fairly trivial. Just replace the version of Mercurial in MacHg/LocalMercurial. Ie replace

MacHg/LocalMercurial/mercurial
MacHg/LocalMercurial/hgext
MacHg/LocalMercurial/mercurial-<version>-py2.6.egg-info

With the new version. Be careful to maintain the extensions in hgext which are not in the new version hgext. Eg histedit, collapse, etc. Moreover you will need to re-apply the patches specific to MacHg to the new version. To find all these differences you can simply compare MacHg's LocalMercurial with a checked out version of the Mercurial repository updated (to the same version but not revision as MacHg is currently using). Eg if MacHg was using version 1.9.2 of Mercurial + MacHg patches, then compare MacHg's LocalMercurial to version 1.9.2 of stock Mercurial to find all of the MacHg patches.

Even though it's possible, this could easily introduce incompatibilities if you're trying to run an older version of Mercurial, which might cause hard-to-diagnose problems. It's likely safer to simply install an older version of MacHg that comes with the version you need.

If you're just trying to update the version of Mercurial MacHg uses to a newer one, consider submitting a pull request, I'm sure they'd appreciate it.

Upvotes: 0

Related Questions