Subject: Re: troubles in supersede old development history (git-svn)

From: Eric Wong <[email-masked]>
Date: Sun, 7 Jan 2007 18:44:28 -0800

Songmao Tian <[email-masked]> wrote:
> our trunk's maintainer is lazy in merging branches, I'd like to merge
> the branch kkmao, and now there are so many the conflicts. I want to
> just use my version and overcome all the conflicts.
> 
> i try in this way:
> 
> git-checkout -b trunk remotes/trunk
> git-rebase --merge -s ours remotes/kkmao
> git-svn dcommit -i trunk
> diff-tree 9b75e30191838431810aec4eda98482a8d6935ed~1
> 9b75e30191838431810aec4eda98482a8d6935ed
> Transaction is out of date: Out of date:
> 'trunk/Targets/Bonito/conf/Bonito.lmbox' in transaction '74-3' at
> /home/kkmao/bin/git-svn line 1577
> 
> so what's the solution?

Probably obvious, but is remotes/trunk up-to-date with git-svn fetch?

Next, can you ensure that the tree referenced by
9b75e30191838431810aec4eda98482a8d6935ed~1 (note the ~1) is the same
as remotes/trunk?
(git diff 9b75e30191838431810aec4eda98482a8d6935ed~1 remotes/trunk)

Unfortunately, I'm not familiar with how the 'ours' strategy works with
rebase --merge.  I generally use the default recursive.  Can you look
at the history in gitk to see if the history from refs/remotes/trunk
to refs/heads/trunk is linear?

> and another question. I use normal merge strategy
> git-svn remotes/kkmao
> got some conflicts..
> 
> and one file is missing, i have to git-ls-files -u to see what's beneath.
> git-ls-files -u
> 100644 f7a66ae00d4034ab580e4ee71b0eaccc3a3e44e7 1
> Targets/Bonito/conf/Bonito
> 100644 e6f5d90b30c3ee694acd2199a03e8f34ef1412ac 3
> Targets/Bonito/conf/Bonito
> 
> I have read some doc, but I think I am still not good at resolve conflict:)

Just look at the file in question; edit it and resolve
the conflicts in it and then git commit <conflicted files>

-- 
Eric Wong