threads / discuss / 30013

New git-subtree almost ready

Subject: New git-subtree almost ready

## tl;dr

3 messages between Mar 21, 2012 and Mar 24, 2012.

replies: 2people: 2as markdown or json

greened@obbligato.org· Mar 21, 2012, 03:36 UTC · lore

I've got the git-subtree merge in pretty good shape now. After being taught about TEST_DIRECTORY, I've been able to get rid of all of the test system changes and can run the git-subtree tests using the stock test infrastructure.

Before I can put the new tree up I need a little help. Since it's been a while since I posted the last version of the tree, I tried to update from upstream master. git-subtree is in a separate branch (it wqas applied as a subtree merge) so I did the usual switch-to-master-and-pull thing.

However, now I don't know how to rebase from master to the subtree branch. If I do a "git rebase master" then the subtree merge gets re-applied as if the files were placed in the root directory rather than in the target directory of the original subtree merge.

The problem is described pretty well here and the issue has been covered on the mailing list before:

http://groups.google.com/group/git-users/browse_thread/thread/d54bacd234d95639 http://comments.gmane.org/gmane.comp.version-control.git/191934

I can think of a few strategies to move forward.
1. Keep the git-subtree branch where it is.  Don't rebase and just push
   the branch to a public repository.  Make Junio do the hard work.  :)
2. Split the subtree merge, remove it from the git repository, rebase
   from master and then re-subtree-merge it.
3. Don't do a rebase, just do a regular merge from master.

Which of these would be best to integrate git-subtree into Junio's repository?

git-web guys, how did you handle this situation?
Thanks!
                           -David
David Aguilar· Mar 24, 2012, 08:00 UTC · re: greened@obbligato.org · lore

Re: New git-subtree almost ready

On Tue, Mar 20, 2012 at 8:36 PM,  <greened@obbligato.org> wrote:
Show 26 quoted lines
> I've got the git-subtree merge in pretty good shape now.  After being
> taught about TEST_DIRECTORY, I've been able to get rid of all of the
> test system changes and can run the git-subtree tests using the stock
> test infrastructure.
>
> Before I can put the new tree up I need a little help.  Since it's been
> a while since I posted the last version of the tree, I tried to update
> from upstream master.  git-subtree is in a separate branch (it wqas
> applied as a subtree merge) so I did the usual switch-to-master-and-pull
> thing.
>
> However, now I don't know how to rebase from master to the subtree
> branch.  If I do a "git rebase master" then the subtree merge gets
> re-applied as if the files were placed in the root directory rather than
> in the target directory of the original subtree merge.
>
> The problem is described pretty well here and the issue has been covered
> on the mailing list before:
>
> http://groups.google.com/group/git-users/browse_thread/thread/d54bacd234d95639
> http://comments.gmane.org/gmane.comp.version-control.git/191934
>
> I can think of a few strategies to move forward.
>
> 1. Keep the git-subtree branch where it is.  Don't rebase and just push
>   the branch to a public repository.  Make Junio do the hard work.  :)

Hehe, I'm pretty sure the option that involves Junio doing the least amount of work is the option to take ;-)

> 2. Split the subtree merge, remove it from the git repository, rebase
>   from master and then re-subtree-merge it.

I don't know if git-gui or gitk maintainers have advice for you, but it sounds like this may be the best option, IMO. git-subtree is not yet part of the git history.

git is in a RC cycle right now, which is likely why you have not heard much on this topic (new feature). Folks will be busy testing the RC and ensuring we have no regressions.

Looking forward to git-subtree,
-- 
David

← back to recent threads