MacMercurial is a graphic user interface wrapper for the Mercurial version control system. It is not intended to completely replace command line use of Mercurial, only to ease the most common Mercurial operations. It requires Mac OS X 10.4 or later.
MacMercurial is copyrighted freeware (© 2008 James W. Walker). It may not be sold or offered for sale, or included with another software product offered for sale, except with the express written permission of the author. It may be redistributed, so long as it remains unchanged. James W. Walker makes no warranty as to merchantability, fitness for a purpose, yada yada yada, and accepts no liability for damages.
I am no longer maintaining MacMercurial. I recommend SourceTree from Atlassian, a much more complete and polished free Mercurial client.
Version 1.1 adds a Fetch From submenu and an Open .hgignore of Repository menu item. It also renames the menu items for opening hgrc files, and behaves more sensibly when the path to Mercurial is incorrect.
Version 1.2 adds an option to warn when you add files with non-portable names, and adds a Check for Updates feature using Sparkle.
Version 1.3 changes:
- Optionally, when MacMercurial starts up, it reopens documents that were open when it last quit.
- One can do diffs of two revisions of a file or repository by selecting two revisions in a log list and then invoking Differences.
- There is a new menu command to revert a file to a selected revision.
- The log window will now use the "medium" date and time formats specified in the International preferences panel.
- It is easier to use FileMerge as a diff tool.
- A crashing bug in Save File Revision As has been fixed.
- It is no longer necessary to have the fetch and extdiff extensions enabled in your .hgrc file.
- I have abandoned attempts to be compatible with Panther (OS 10.3.x).
Version 1.3.1 changes:
- At least under Leopard, MacMercurial should be compatible with a nonempty ssh pass phrase.
- The Delete Unknown Files command now moves files to the Trash rather than immediately deleting them.
Version 1.3.2 changes:
- In a log listing, the files affected by a changeset are listed on separate lines.
Version 1.3.3 changes:
- Fixed a bug in which the repository file failed to record a change in the location of a repository.
- In a status window, the Differences command is not enabled if there are selected items but no item with status M is selected.
Version 1.4 changes:
- The Transcript window has a new button to clear the text.
- The Transcript window has a new button to insert a time stamp marker.
Version 1.4.1 changes:
- Fixed a date stamp bug in Tiger.
- I think I fixed a hard-to-reproduce crash.
Version 1.5 changes:
- Added Pull and Pull From commands, for those who don't like Fetch.
- Added Update to Selected Revision command.
- Automatic status checks are temporarily disabled during a Tag operation, so that you won't see .hgtags temporarily showing up as a modified file.
Version 1.6 changes:
- Added Show in Web Browser command, which starts
hg serve
and opens it in your default web browser. Different repositories are served with different ports, so you can browse multiple repositories at once. - Added a search field to the log window.
- Prevent an empty commit message.
Version 1.6.1 changes:
- I think I have fixed an occasional problem in which MacMercurial got in a loop checking the status of a repository every few seconds.
- The log of a repository closes when the repository window it came from closes.
- After you update to a selected revision in a repository log, the Parents column for that repository will be automatically updated.
- The "Revert to Parent of Working Directory" menu item will be enabled when the status window has something selected but not unknown items.
Version 1.6.2 changes:
- There is now a preference to check Outgoing for all repositories when the document opens.
- I think I have fixed an occasional failure to update the status after committing all changes.
Version 1.6.3 changes:
- The search field in a Log window now searches the list of file paths appended to the commit message as well as the commit message itself.
- Automatic status checks are temporarily disabled during Update and Update to Selected Revision operations, so that you don't see ephemeral changes in a status window.
Version 1.6.4 changes:
- The Tag... command is now available when you have selected a single repository in the log of a repository, making it possible to tag a revision other than the parent of the working directory.
- Automatic status checks are temporarily disabled during Add and Revert operations, so that you don't see ephemeral changes in a status window.
Version 1.6.5 changes:
- Fixed a hang when adding or committing more than about 4096 files at a time.
- The open panel for the Log of File command now treat packages as directories.
Version 1.7 changes:
- The Edit menu has a new Remove Line Breaks command to aid in formatting commit messages.
- There is a new preference to make Pull do
pull --update.
- The Fetch From and Pull From submenus are now alternate menu items; they only appear when the option key is pressed.
- There are now Push To, Outgoing To, and Incoming From submenus which appear when the option key is pressed.
- You can specify a remote command for each remote path; see the setup section of the online help for details.
- This Read Me file is available on the application menu.
Version 1.7.1 changes:
- Code signed to make GateKeeper in Mountain Lion happy.
- You can drag repositories from one repository document to another.
MacMercurial.dmg, version 1.7.1, 1.1MB.