A tool made for migrating code from an existing [RTC] (https://jazz.net/products/rational-team-concert/) SCM repository into a Git repository. Inspired by rtc2git, but written in Java and hopefully faster. It is implemented as scm cli plugin.
- SCM Tools from IBM. To avoid an account creation on jazz.net site, you could use bugmenot (see also wiki page [configure RTC CLI] (https://github.com/rtcTo/rtc2git/wiki/configure-RTC-CLI))
- Eclipse configured with scm tools as target platform (see wiki configure scm tools target platform)
- create an source RTC workspace with flow target and components as wanted --> SOURCE_WORKSPACE
- create an target RTC workspace with SOURCE_WORKPSACE as flow target --> TARGET_WORKSPACE
- check comments at configure rtc workspaces
- open shell or cmd
- step into the target directory
- load the initial target workspace:
scm load -r <uri> -u <username> -P <password> <TARGET_WORKSPACE>
- execute the actual migration:
scm migrate-to-git -r <uri> -u <username> -P <password> -m <migration.properties> <SOURCE_WORKSPACE> <TARGET_WORKSPACE>
- It initalizes an empty git repository and clones it
- In this repository, it loads TARGET_WORKSPACE rtc workspace
- Every change set is accepted
- If there is a baseline on the change set, a tag is created on git
- The change set is committed to git
In order to have a common coding style across multiple versions of Eclipse import the eclipse-rtccli-format-settings.xml
as your first
step. Then unpack a SCM Tools as downloaded into the Eclipse workspace directory. As soon you have done this step you are able to import the actual
rtc2git.cli.extension
project. When you got compile errors, make sure to
select rtc2git as your default Target Platform.
For more details [visit our wiki] (https://github.com/rtcTo/rtc2gitcli/wiki)
- [api docs] (http://download.eclipse.org/jgit/docs/jgit-3.3.0.201403021825-r/apidocs/?d)
- [jgit cookbook] (https://github.com/centic9/jgit-cookbook)
- [User Guide] (http://wiki.eclipse.org/JGit/User_Guide)
Feel free to report and/or fix issues or create new pull requests