1

I have project A, which includes a local fork of project B. This is, project B's potentially modified sources are included in a subtree of project A. Project A uses svn, project B uses git.

Using git for my local copy of project A, I want to:

  • Be able to merge project B's upstream changes into project A.
  • Be able to contribute back to project B some (not all) of the modifications to project B's fork included in project A.
  • Do it in such a way that clean individual commits (not squashed) are sent both to project A (via git-svn) and to project B (via git).

I've been trying hard to find a solution mixing git-svn and git-subtree capabilities (git-submodule is out of question as I want a unique source tree). But I can't find a perfect solution.

Techie
  • 44,706
  • 42
  • 157
  • 243
elmart
  • 2,324
  • 15
  • 17
  • If I understand correct, your local copy of A is git-svn and has project B as subtree? I'm currently using this setup. The only thing that does not work is that your upstream svn project A contains the individual commits of project B. If you merge the subtree to your local A and afterwards dcommit it to svn the commits of the merge are squashed into one single commit. – housemaister Apr 05 '13 at 08:10
  • Yes, that's what I mean. Project A's main repo is svn. Project B's main repo is git. I've got a git-svn local repo for project A. Then I add a local copy of project B as a subtree in my local git-svn repo for A. – elmart Apr 12 '13 at 16:08
  • And I would like to be able to send back clean commits to both projects A and B. – elmart Apr 12 '13 at 16:15

0 Answers0