See https://wiki.apache.org/lucene-java/BensonMargulies/GitSvnWorkflow
for an experiment with git svn.

On Tue, Feb 18, 2014 at 1:47 PM, Benson Margulies <[email protected]> wrote:
> Once I have transported a change from branch to branch via diff\apply, git
> stops discussing a rename at all.
>
> On February 18, 2014 9:06:30 AM EST, Thomas Matthijs <[email protected]>
> wrote:
>>
>> Unfortunately i can't find a way to make it explicitly show it will do a
>> svn rename, but it does do it, so that makes this solution not very useful
>> either i guess.
>>
>>
>> --- git ---
>> [master svntest] % git status
>> On branch master
>> Changes to be committed:
>>   (use "git reset HEAD <file>..." to unstage)
>>
>> renamed:    test -> moo
>>
>> [master svntest] % git commit -m "woof"
>> [master 6e2c0b3] woof
>>  1 file changed, 0 insertions(+), 0 deletions(-)
>>  rename test => moo (100%)
>> [master svntest] % git svn dcommit
>> Committing to https://.../trunk ...
>> R test => moo
>> Committed r3
>> D test
>> A moo
>> W: -empty_dir: trunk/test
>> r3 = 0ae41e170cf7d07ec3679eb85d55c068617e0a66 (refs/remotes/trunk)
>>
>>
>> ----- svn ---
>>
>> [trunk] % svn log --diff -v
>> ------------------------------------------------------------------------
>> r3 | thomas | 2014-02-18 14:32:07 +0100 (Tue, 18 Feb 2014) | 1 line
>> Changed paths:
>>    A /trunk/moo (from /trunk/test:2)
>>    D /trunk/test
>>
>> woof
>>
>>
>> On Tue, Feb 18, 2014 at 2:22 PM, Benson Margulies <[email protected]>
>> wrote:
>>>
>>> Let me be specific. If I am sitting in a git clone that has been set
>>> up with git svn, and I use git apply to apply the output of git
>>> format-patch, if I dcommit, is the autodetection going to result in an
>>> svn mv?
>>>
>>>
>>> On Tue, Feb 18, 2014 at 8:20 AM, Thomas Matthijs <[email protected]>
>>> wrote:
>>> > Git does not track renames, but can show/detect it, the magic options
>>> > are -C
>>> > and -M  for diff/show etc
>>> >
>>> >
>>> >
>>> > On Tue, Feb 18, 2014 at 2:16 PM, Benson Margulies
>>> > <[email protected]>
>>> > wrote:
>>> >>
>>> >> I tried using git apply on a patch (from github's .patch URL)  that
>>> >> included a rename. no sign of a rename; just a delete and an add. I
>>> >> feel like I'm missing something.
>>> >>
>>> >> On Tue, Feb 18, 2014 at 7:36 AM, Shai Erera <[email protected]> wrote:
>>> >> > The problem I see is that if you generate a patch using 'git diff',
>>> >> > it
>>> >> > applies just fine to svn (if you generate it w/ --no-prefix) without
>>> >> > any
>>> >> > warnings about missing files due the rename. Wanted to warn the
>>> >> > community
>>> >> > about it, so that when committers assign themselves to PRs, they
>>> >> > review
>>> >> > the
>>> >> > patch closer and detect manually if a rename as happened.
>>> >> >
>>> >> > We could decide that renames are done in a separate commit, but it's
>>> >> > not
>>> >> > always possible.
>>> >> >
>>> >> > So mainly, FYI.
>>> >> >
>>> >> > And if someone has an idea for a script/ant-target we could write to
>>> >> > detect
>>> >> > this case, that would be awesome.
>>> >> >
>>> >> > Shai
>>> >> >
>>> >> >
>>> >> > On Tue, Feb 18, 2014 at 2:31 PM, Thomas Matthijs <[email protected]>
>>> >> > wrote:
>>> >> >>
>>> >> >> Github pull requests can be treated as individual cherry picked
>>> >> >> patch
>>> >> >> sets
>>> >> >> really, not branch merges ? (ie rebased) from there on out you're
>>> >> >> in
>>> >> >> svn
>>> >> >> land. No need to "merge".
>>> >> >>
>>> >> >> But indeed, it tries to detect it based on the file content, and
>>> >> >> doesn't
>>> >> >> work 100% as manual svn moves.
>>> >> >>
>>> >> >>
>>> >> >>
>>> >> >> On Tue, Feb 18, 2014 at 1:27 PM, Benson Margulies
>>> >> >> <[email protected]>
>>> >> >> wrote:
>>> >> >>>
>>> >> >>> Well, git-svn has a heap of warnings against using it for merges;
>>> >> >>> it's
>>> >> >>> also a really bad idea when renaming a whole package, as it does
>>> >> >>> it
>>> >> >>> one-file-at-a-time.
>>> >> >>>
>>> >> >>> If you have a workflow that works with the ASF mirror and svn,
>>> >> >>> please
>>> >> >>> write it up on the Wiki!
>>> >> >>>
>>> >> >>>
>>> >> >>> On Tue, Feb 18, 2014 at 7:23 AM, Thomas Matthijs
>>> >> >>> <[email protected]>
>>> >> >>> wrote:
>>> >> >>> >
>>> >> >>> > On Tue, Feb 18, 2014 at 1:18 PM, Shai Erera <[email protected]>
>>> >> >>> > wrote:
>>> >> >>> >>
>>> >> >>> >>
>>> >> >>> >> Second, has anyone perhaps found a way to overcome that issue?
>>> >> >>> >> I
>>> >> >>> >> thought
>>> >> >>> >> about maybe writing a script to detect that, looking at the
>>> >> >>> >> patch
>>> >> >>> >> file, but
>>> >> >>> >> it seems hard to detect that the deleted Foo is the new Bar. If
>>> >> >>> >> it's
>>> >> >>> >> just
>>> >> >>> >> rename, maybe, but if part of the rename the code changed a lot
>>> >> >>> >> ...
>>> >> >>> >> it
>>> >> >>> >> becomes harder.
>>> >> >>> >
>>> >> >>> >
>>> >> >>> > Probably not the answer you want but
>>> >> >>> > If you use the git-svn bridge it should detect the rename and
>>> >> >>> > commit
>>> >> >>> > it
>>> >> >>> > in
>>> >> >>> > svn as a move/copy
>>> >> >>> >
>>> >> >>> > https://www.kernel.org/pub/software/scm/git/docs/git-svn.html
>>> >> >>>
>>> >> >>>
>>> >> >>> ---------------------------------------------------------------------
>>> >> >>> To unsubscribe, e-mail: [email protected]
>>> >> >>> For additional commands, e-mail: [email protected]
>>> >> >>>
>>> >> >>
>>> >> >
>>> >>
>>> >> ---------------------------------------------------------------------
>>> >> To unsubscribe, e-mail: [email protected]
>>> >> For additional commands, e-mail: [email protected]
>>> >>
>>> >
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [email protected]
>>> For additional commands, e-mail: [email protected]
>>>
>>
>
> --
> Sent from my Android device with K-9 Mail. Please excuse my brevity.

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to