Search code examples
javaversion-controlmylynchangeset

How to access ChangeSets in Eclipse (Mylyn/Team)?


I want to access the ChangeSets of SVN, CVS and Git programatically via Java. I.e. I want the data which is shown in the "Synchronize"-view.

I tried several approaches to find the correct usage in the code, and here's the few documentation I could find (but without success):

  • I managed to access the Synchronize-View via TeamUI.getSynchronizeManager(), but not the changesets.

  • An other thing I tried was to get the cangesets via FocusedTeamUiPlugin.getDefault().getContextChangeSetManagers() (got the manager and then the ChangeSetProvider where I tried to get the ChangeSets) - but they always are empty (because they are created when I first call it).

So, how can I access ChangeSets (with Java) in Eclipse (Mylyn)? In the end, I need the number of commits and code churn (loC added/removed/edited). Or is there probably an other, better approach?

Any help is appreciated really much!


Solution

  • I don't think Eclipse has implemented this feature as a public API yet. However, these links may help:

    Internal changeset class and other API: http://www.cct.lsu.edu/~rguidry/ecl31docs/api/index.html?org/eclipse/team/internal/core/subscribers/ChangeSet.html

    A feature enhancement request where they talk about why they haven't implemented it yet (but it's dated 2008, however the bug is still open?) https://bugs.eclipse.org/bugs/show_bug.cgi?id=116084

    Sorry I couldn't be of more help! Maybe this will help you in the right direction...