git - Maintaining patches of third-party Java library dependencies -
my java project has dependency on third-party library, let's call xyz.jar. project maintained in git , xyz in svn. xyz included in project maven dependency gets downloaded automatically part of build process.
i need make minor tweaks source of xyz, still want updates project maintainers. options have?
currently, best option seems to this:
- fork svn repo xyz new git repo using
git svn clone
. - hack on git repo.
- build xyz-hacked.jar git repo , export artifact maven library server.
when new changes come out xyz, can git svn rebase
keep git repo date.
what best practices here? can improve on approach?
edit
i know there some manual work involved, e.g. resolving merge conflicts , ensuring patches compatible latest xyz. i'm not looking general, automated code merge solution. i'm trying find out best practices , tools in situation.
gradle
i don't think gradle-specific question, in case there's gradle-specific answer: i'm using gradle include xyz.jar 'compile' dependency.
no matter approach use, labor-intensive.
explicit conflicts occur, more insidious, change anywhere in base can totally break local mods, change in source file local mods don't touch (i.e. interface signature depend on).
each , every rebase require manual merging , complete regression testing on 3rd party library , applciations depend on library.
by definition, not automatable.
Comments
Post a Comment