How do I release a 3rd-party library to Hydro with the same patches as Groovy
I had to apply very many patches to get libfreenect
working on Groovy. I want to release exactly the same patched code to Hydro.
The bloom 3rd-party release tutorial says to follow the Releasing a catkin Package tutorial for successive releases. So, I followed the Releasing into a new ROS Distribution instructions, which are basically the same:
$ bloom-release --ros-distro hydro --new-track libfreenect hydro
That appeared to succeed, but fortunately I checked the result before doing the release. The patch level had been set back from 4 to 0, and none of the patches were applied.
Now I am trying to figure out how to release to Hydro with exactly the same patches used with Groovy.
I started out by checking out the bloom
branch and setting the release_inc
for hydro to 4. Then I checked out the patches/release/hydro/libfreenect
branch, which had no patches, and merged the groovy patches:
$ git merge origin/patches/release/groovy/libfreenect
Auto-merging patches.conf
CONFLICT (add/add): Merge conflict in patches.conf
Automatic merge failed; fix conflicts and then commit the result.
That did copy over all the patches, which look OK, but the merge failure is in patches.conf
:
$ git diff
diff --cc patches.conf
index 2fa3f7a,837aec3..0000000
--- a/patches.conf
+++ b/patches.conf
@@@ -1,6 -1,6 +1,13 @@@
[patches]
trim =
++<<<<<<< HEAD
+ base = 466830d
+ trimbase =
+ parent = upstream
+ previous = 39ae840
++=======
+ base = 22a8bed
+ trimbase =
+ parent = upstream
+ previous = 20c8817
++>>>>>>> origin/patches/release/groovy/libfreenect
I have no clue how to resolve that.
My somewhat-mangled release repository is on github in ros-drivers-gbp/libfreenect-release as bloom-release
left it. I am afraid to commit any of these manual changes for fear of destroying all the hard work in my release repository.
What should I do, now?