git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: After git svn clone master is tied to a branch in svn, howto set master to trunk

From
SBSvenn Are Bjerkem <svenn.bjerkem@googlemail.com>
Date
Mar 11, 2009, 17:54 UTC
Message-ID
<137694e3-7e06-49cd-b4d4-a3e2d9fc4560@v15g2000yqn.googlegroups.com>
In-Reply-To
<f07e780b-621f-4d2d-83dd-363716f9d507@d19g2000yqb.googlegroups.com>

On Mar 11, 6:20 pm, Svenn Are Bjerkem <svenn.bjer...@googlemail.com> wrote:

Show 57 quoted lines
> On Mar 11, 5:32 pm, Michael J Gruber <g...@drmicha.warpmail.net>
> wrote:
>
>
>
> > Svenn Are Bjerkem venit, vidit, dixit 11.03.2009 16:17:
>
> > > Hi,
> > > after performing a
> > > $> git svn clonehttps://svnserver/svn/a/b/c-Ttrunk/current -t tags -
> > > b branches
> > > I find that the git master has been tied to one of the branches. It
> > > turns out that the highest svn revision number in the repository was
> > > tied to that branch.
>
> > > For historical reasons we have subdirectories in trunk/ on svn, but I
> > > inspected .git/config
> > > [svn-remote "svn"]
> > >         url =https://svnserver/svn
> > >         fetch = a/b/c/trunk/current:refs/remotes/trunk
> > >         branches = a/b/c/branches/*:refs/remotes/*
> > >         tags = a/b/c/tags/*:refs/remotes/tags/*
> > > And I assume it picked up the strange trunk correctly.
>
> > > I have been googling around for a while looking for instructions how
> > > to tell git that when I check out "master" it should be "trunk" from
> > > svn and not "branches/next_gen", or more precisely how to move master
> > > to trunk from branches/next_gen.
>
> > > I guess I could solve the problem by modifying a file in trunk on svn
> > > and commit so that the trunk will get the highest svn revision number
> > > again and redo the clone.
>
> > I'm not quite sure what you mean by master being "tied" to an svn
> > branch. You mean you want master to track the svn trunk? Then
>
> When doing a git svn info in master right after the clone was
> finished, before any work was done, URL washttps://...../branches/next_gen.
> When deleting the git repository, modifying and commiting a file in
> trunk on svn and rerun the exact same clone operation, URL in git svn
> info becamehttps://....../trunk/current. During the first clone,
> branches/next_gen had the highest overall svn revision number and got
> automatically "tied" to master, while in the second clone run trunk
> had the highest overall svn revision number and git chose that master
> should track svn trunk.
>
>
>
> > git branch -D master
> > git checkout --track -b master trunk
>
> > should do (assuming you haven't worked on master yet).
>
> I will take a note of this advice and perform a commit to force a
> different branch than next_gen to have overall highest svn revision
> number when I do a clone next time. Reading up in the manuals on your
> suggestion seems to be what I intended to acheive.

I now had the opportunity to check your suggestion, and this time I first performed a commit in branches/old_gen so branches/old_gen got the overall highest svn revision number. When performing exactly the same git svn clone as before, master was set to track branches/ old_gen. Now I tried your suggestion, and except for the fact that I cannot delete master as long as I am in master, it works as expected. I had to do a git checkout -b next_gen next_gen to get into next_gen branch to be allowed to git branch -D master, but that was not a really big surprise. Then checkout --track does the job nicely.

Good to know, thanks for your help, Svenn

Previous: Svenn Are Bjerkem
Message 5 of 5 in “After git svn clone master is tied to a branch in svn, howto set master to trunk”
  1. Svenn Are BjerkemMar 11, 2009
  2. Svenn Are BjerkemMar 11, 2009
  3. Michael J GruberMar 11, 2009
  4. Svenn Are BjerkemMar 11, 2009
  5. Svenn Are BjerkemMar 11, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.