7. Dezember 2008 um 11:45
· Gespeichert unter: computer, mercurial

photo credit: ~K~
As I’ve just spotted, some important additions have been committed to the repository
of the bookmarks extension: Push now supports only pushing non-bookmarked changesets, which means that your local bookmark branches are really only local and won’t be available in the target repository. And we have a corresponding feature in log to only show bookmarked changesets. Moreover, the bookmark you’re on is now tracked, so now the behaviour is more like the git local branches one.
Especially the push enhancement is important as you now don’t have to strip all bookmark-branches before pushing. So now we only need a means, to propagate bookmarks between repositories :-).
Update: Was backed out again :(.
Permalink
2. Dezember 2008 um 08:15
· Gespeichert unter: computer, mercurial

photo credit: The Rocketeer
We’ve unleashed our latest release, so head over to Assembla (see link in sidebar) and download it :-). As of differences, you can find them all in the changes section of the wiki - in my opinion the most interesting new features are bookmarks, hgsubversion and rebase support.
Permalink
23. November 2008 um 11:05
· Gespeichert unter: computer, mercurial
![#07 [from::the office]; the workspace or empty](http://farm3.static.flickr.com/2311/2303858967_be0707026e_m.jpg)
As a some people seem to miss a shelve / unshelve feature in Mercurial, we now have a self-grown solution that works a lot like the hgshelve extension. It does the following:
- Check if we have not already shelved something for this project. If the shelf is not empty, we notify the user and abort.
- Determine which project files are in one of the states modified, added, removed or deleted. If the repository root is hierarchically above the project level, only the files within the current project are considered.
- Export a diff for all of these files to the file <project-name>-patchfile.patch that resides in the folder .hg/mercurialeclipse-shelve-backup. This patch file contains the diffs for all modified files in the project.
- Determine the changeset at which the current working directory is via hg id.
- Update to that changeset with hg update -C -r <changeset>.
- Refresh the resources whose diff was exported.
For Unshelving these changes we do the following:
- Check if there are files in our backup directory that contain shelved changes. Notify user and abort if no changes are shelved.
- Import changes via hg import <patchfile>.
- Empty shelve by deleting the patch file.
- Refresh the project directory for updating files and decorations within Eclipse.
The mandatory screenshot:

The current implementation is not compatible with the hg shelve extension, but this extension a) currently does not work and b) is only using interactive mode.
Permalink
21. November 2008 um 18:17
· Gespeichert unter: computer, mercurial
Steeven Lee contributed some nice wizards to MercurialEclipse. They facilitate importing and exporting of patches. See screenshots below:
Import:

Export:

Permalink
15. November 2008 um 16:45
· Gespeichert unter: computer, mercurial
Had I known yesterday that I would have another feature to blog about, I’d have skipped the previous post and put it all together in this…

Anyway, a new feature is now available in the current development version of MercurialEclipse, the Mercurial team plug-in for Eclipse: So called bookmarks.
The functionality is provided by the bookmarks extension, distributed together with Mercurial versions that are newer than 24.10.2008. So what are bookmarks? Have you heard of the complaint that Mercurial can’t do deleteable named branches within one clone? Don’t you want to clone to create a branch? Then the bookmark extension could be the solution for you. But keep in mind that bookmarks do not propagate to remote repositories. They are only available on your machine.
Bookmarks are pointers to specific heads. As with git local branches, they move with each commit and always point at the head. Update: There’s a nice introduction available at the blog of the extension’s author if you want to read more about the extension.
The dialog tab in the screenshot above allows you to create such bookmarks. If nothing is selected, it just sets the new bookmark to the tip revision. If you select a revision - I trust, you get it…
Contrary to named branches, bookmarks are local only and therefore aren’t under source control. This means, you can modify them as much as you like. Below you see our interface for renaming or deleting bookmarks.

Working with bookmarks is like using branches. On the command line you can use it wherever a revision needs to be specified. So we’ve extended our “Update to different changeset dialog…” to include bookmarks. The new tab looks like this:

Okay, that’s it for now. The next post about this follows when new features are available.
Permalink
14. November 2008 um 21:05
· Gespeichert unter: computer, mercurial

As MercurialEclipse is steadily evolving, the development version has got a few new features:
- Rebase support has landed, but is of course only usable with current Mercurial crew as there hasn’t been a stable Mercurial release that supports rebase. Our new wizard supports all rebase options, including aborting and continuing previously started rebases.
- The hgsubversion extension is now supported when pulling, pushing and cloning. This means, it is now possible to read from and write to subversion repositories while still using MercurialEclipse. Therefore you won’t have to interrupt your normal workflow, you can just work as with a normal Mercurial repository. Unfortunately, you need a rather new Mercurial installation for this as well. Other dependencies can be found at our project page.
- Finally, we’ve been able to integrate the official Mercurial logo as Matt Mackall has granted usage of the official icons, even though the plug-in is not GPL, but EPL licensed.
- Some internationalization fixes (UTF-8) have landed.
So feel free to grab a copy at http://hg.assembla.com/mercurialeclipse and enjoy the new stuff :-).
Bastian
Permalink
11. Mai 2008 um 08:39
· Gespeichert unter: computer, mercurial
Nachdem Eclipse als Platform und Java Entwicklungsumgebung immer stärkere Verbreitung findet, habe ich mich entschlossen, meine Java-Kenntnisse in Richtung Eclipse Plugin/RCP-Programmierung auszuweiten. Und da ich zusätzlich noch Interesse an verteilten Revisionskontrollsystemen (DVCS) wie Mercurial, Git oder Bazaar hatte, habe ich mich entschlossen, das Open Source Projekt MercurialEclipse zu unterstützen.
MercurialEclipse hat sich zum Ziel gesetzt, die Bedienung von Mercurial aus der Eclipse-Umgebung heraus zu einfach ermöglichen und verbindet somit die beiden oben genannten Interessengebiete. Also habe ich mir die schon vorhandenen Quelltexte heruntergeladen, Mercurial installiert und einfach eine kleine Änderung an den Hauptentwickler geschickt. Danach ging es ziemlich schnell: Die Änderung ist in den offiziellen Entwicklungszweig gegangen, er hat mir erzählt, wo ich mich austoben kann, und seitdem konnte ich schon eine Menge an Funktionalitäten hinzufügen und viel über Eclipse und Mercurial lernen.
Hier ein Screenshots eines meiner ersten Wizards:

Permalink