On Mar 30, 4:07 am, Thomas Ferris Nicolaisen <[email protected]> wrote:
> Just for orientation, me and Sabba are sparring about how to setup and use a
> Git-SVN mirror. More details (explaining 'upci' and more) can be found
> here:http://blog.tfnico.com/2010/11/git-svn-mirror-for-multiple-branches.html
>
>
>
>
>
>
>
>
>
> On Wednesday, March 30, 2011 12:25:50 AM UTC+2, Sabba Hillel wrote:
>
> > In running a "git upci" on a particular file, it has been updated in
> > the svn repository but not yet picked up by the git svn "fetch"
> > repository or put into the git repository.
>
> > Running git upci (update-ref and dcommit) I get an error message from
> > dcommit.
>
> > Commiting to svn repo/README.txt
> > Merge conflict during commit: File or directory 'README.txt is out of
> > date; try updating: The version resource does not correspond to the
> > resource within the transaction ...
>
> > I had updated the file with a git pull and the automerge was
> > successful. I have identified the lines that were changed within svn
> > and also the lines committed from within git. What do I do now?
>
> > Should I issue a git push from my local git to the git repository
> > followed bu a git svn dcommit and then a git svn rebase and git push
> > from the fetch repository?
>
> No, you must never ever push to the bare git repository, nor the fetching
> repo. These should only contain commits fetched from SVN (identifiable by
> the git-svn information in the commits), something like:
>
> <commit msg>
>
> git-svn-id:https://scm.company.com/svn/project@123
> 901b3fc1-1df5-aa1e-233f-0cced8b7b346
>
> The workflow goes like this:
>
> 1. Work work work, commit locally
> 2. git pull --rebase
> 3. git upci
>
> If this doesn't work, something has gone wrong on the way. Please post back
> with a more detailed overview of what you do in the exact order to recreate
> the problem.
>
> Note that apart from the local commits you do before an "upci", all the
> commits in your repository should have the git-svn information.
Yes that is what I meant. I did the following
1. Make sure the fetch and bare repositories are up to date on the git
server
git svn rebase --all
git push --mirror
This was on the git-server as a separate task
2. Everything else was on the local
git pull --rebase is done on the local platform.
Someone else does a commit to the svn repository of a change to
README.txt
The git repository is in between refreshes.
3. On my local platform I update the file README.txt, which was
changed in step 2 on the svn repository.
4. git commit (commit my changes to the local).
5. git upci does the "git svn dcommit"
The git svn dcommit gets the error message.
--
Sabba - סבא הלל - Hillel
Hillel (Sabba) Markowitz | Said the fox to the fish, "Join me ashore"
[email protected] | The fish are the Jews, Torah is our water
http://sabbahillel.blogspot.com
--
You received this message because you are subscribed to the Google Groups "Git
for human beings" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/git-users?hl=en.