On 05/18/2017 02:06 PM, Markus Trippelsdorf wrote: > On 2017.05.18 at 13:42 -0600, Martin Sebor wrote: >> On 05/18/2017 12:55 PM, Markus Trippelsdorf wrote: >>> On 2017.05.18 at 12:41 -0600, Martin Sebor wrote: >>>> On 05/18/2017 11:59 AM, Jeff Law wrote: >>>>> On 05/18/2017 11:41 AM, Martin Sebor wrote: >>>>>> I just tried to push a change and got the error below. git >>>>>> pull says my tree is up to date. I wonder if it's caused by >>>>>> my commit conflicting with another commit (in this case >>>>>> r248244) that git-svn doesn't see because it lags behind SVN. >>>>>> I brushed this (and other strange errors) off before, not >>>>>> bothering to try to understand it but it's happened enough >>>>>> times that I'd like to bring it up. I expect some (maybe >>>>>> even most) of these issues would not exist if we were using >>>>>> Git directly rather than the git-svn wrapper. Has any more >>>>>> progress been made on the Git integration project? Is there >>>>>> something I/we can do to help get it done? >>>>> That just means something changed upstream betwen your last git svn >>>>> rebase and your local commit. >>>>> >>>>> Just "git svn rebase", resolve conflicts (the ChangeLogs are the most >>>>> common source of conflicts) and you should be good to go. >>>> >>>> The main issue is that there tend to be errors that wouldn't >>>> happen without the extra layer between Git and SVN. The two >>>> are out of sync by minutes (I don't know exactly how many but >>>> it seems like at least 10), so clearing these things up takes >>>> time. Some (I'd say most) of the errors I've seen out of >>>> Git-svn are also not completely intuitive so it's not always >>>> clear what or where the problem is. >>>> >>>> So I'd like to see if there's something that can be done to >>>> move the migration forward. >>> >>> The same issue also happen with git when several people push at the same >>> time. >> >> Yes, it can. The major difference, I suspect, is due to Git-svn >> asynchronous, delayed updates. My guess is that Git-svn pull >> requests are based on updates from SVN that happen only every >> few minutes, but pushes happen in real time. So when we pull, >> we're likely to get outdated sources (changes committed since >> the last Git update are not included). But when we push, we're >> likely to run into (at a minimum) ChangeLog conflicts with those >> already committed changes that Git-svn hasn't been updated with. >> This is just a wild guess based on the errors I've seen and >> their increased incidence since 7 has been released. > > "git svn dcommit" will run "git svn rebase" automatically, so you are > already on the latest svn revision. It doesn't matter if git lags behind > or not, only svn counts here. > The situation will be exactly the same after the switch to git. If you > are unlucky and several people push at the same time, you could be > forced to pull/rebase and retry your push request several times. Right.
jeff