HiromuHota / pdi-git-plugin

SpoonGit allows you to manage versions of local Kettle files without leaving Spoon. In addition to Git, Subversion is also supported.
Apache License 2.0
29 stars 12 forks source link

Add support for Mercurial repository #30

Open enricomariam42 opened 5 years ago

enricomariam42 commented 5 years ago

With Mercurial bridge from Git project seems straightforward. From: https://github.com/mnauw/git-remote-hg "allows you to clone, fetch and push to and from Mercurial repositories as if they were Git ones" "add the 'git-remote-hg' script anywhere in your $PATH (with Mercurial installed)" But I can't get it to work.

HiromuHota commented 5 years ago

pdi-git-plugin uses EGit, Java implementation of Git client, and does not use Git CLI. git-remote-hg looks to me that it assumes the use of Git CLI, meaning it cannot be used in pdi-git-plugin (and that's why you couldn't get it working). In order to support Mercurial, I think pdi-git-plugin has to use a Java implementation of Mercurial client such as Hg4J.

Currently, org.pentaho.di.git.spoon.model.IVCS is the common interface, implemented by org.pentaho.di.git.spoon.model.UIGit (for Git) and by org.pentaho.di.git.spoon.model.SVN for (Subversion). Similarly, a support for Mercurial is possible by implementing the interface org.pentaho.di.git.spoon.model.IVCS and uses Hg4J internally.

If anyone can implement, please send me a PR. I'm happy to review and merge it.

HiromuHota commented 5 years ago

Small correction Wrong: pdi-git-plugin uses EGit Correct: pdi-git-plugin uses JGit