Another gnucash git question

John Ralls jralls at ceridwen.us
Sat May 7 14:51:52 EDT 2011


On May 7, 2011, at 9:39 AM, Geert Janssens wrote:

> On zaterdag 30 april 2011, John Ralls wrote:
>> On Apr 30, 2011, at 10:18 AM, Geert Janssens wrote:
>>> On zaterdag 30 april 2011, John Ralls wrote:
>>>> You want to track refs/remotes/origin/2.4. The other ones are git-svn
>>>> artifacts.
>>>> 
>>>> Regards,
>>>> John Ralls
>>> 
>>> Ok thanks.
>>> 
>>> I think I'm almost through now. There is one artifact still in my
>>> converted repo from how I originally imported the svn repo: I have a
>>> branch for each tag in svn.
>>> 
>>> There were no actual tags at first sight, but I ran a
>>> git fetch -t origin
>>> This imported all tags as true tags.
>>> 
>>> The tag-branches are still in the repo though and I would like to remove
>>> them. A git branch -d tags-<tag name>
>>> will probably remove them, but I'm concerned that this would also trigger
>>> git- svn to propagate the removal to our svn repository. How about this
>>> ?
>>> 
>>> When I manage to remove these faulty branches, I can write up my
>>> experiences in the wiki in case others want to follow the same route.
>> 
>> Geert,
>> 
>> Yes, the tag branches are probably packed references from your original git
>> svn import. You can look in your backup/.git/packed-refs (a text file) to
>> make sure.
>> 
>> I don't think that git-svn even knows how to delete branches from the svn
>> repo, but you could delete one, then try git svn dcommit -n (dry run) to
>> make sure it doesn't try to do something dumb.
>> 
> I deleted one (removed it directly from the file because a git branch -d 
> didn't want to work).
> 
> git svn dcommit -n gives me a series of warnings all similar to:
> W: Refspec glob conflict (ref: refs/remotes/sx-fixes):
> expected path: gnucash/branches/sx-fixes
>    real path: gnucash/gnucash/branches/sx-fixes
> Continuing ahead with gnucash/gnucash/branches/sx-fixes
> 
> But each time for different paths.
> 
> Removing the line from the packed-refs file does remove the tag-branch from 
> the branch list though. I have removed all the fake tag-branches in this way 
> now, but the dcommit warnings don't go away.
> 
> What are these about ?

Geert,

It seems to be saying that git-svn expects to find a ref called gnucash/branches/sx-fixes, but it's finding gnucash/gnucash/branches/sx-fixes instead. I imagine that this is an artifact of your previous git svn init, so it might take a little surgery with git update-ref to clean up.

You might start with `grep sx-fixes .git/packed-refs` to see what shows up. You might also look in .git/svn/refs/remotes/svn. In my gnucash-git working directory I have only "trunk", but on the server which does the mirroring all of the branches are listed directly (e.g., .git/svn/refs/remotes/svn/sx-fixes).

Regards,
John Ralls


More information about the gnucash-devel mailing list