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

Reply via email to