git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Avery Pennarun <apenwarr@gmail.com>
To: Sverre Rabbelier <srabbelier@gmail.com>
Cc: Ramkumar Ramachandra <artagnon@gmail.com>,
	Git Mailing List <git@vger.kernel.org>
Subject: Re: native-git-svn: A Summer of Code 2010 proposal
Date: Fri, 19 Mar 2010 17:30:09 -0400	[thread overview]
Message-ID: <32541b131003191430ld0eaa9cw1d2aac08cff15682@mail.gmail.com> (raw)
In-Reply-To: <fabb9a1e1003191139v6ea37df3uba441f2cba9bc992@mail.gmail.com>

On Fri, Mar 19, 2010 at 2:39 PM, Sverre Rabbelier <srabbelier@gmail.com> wrote:
> On Fri, Mar 19, 2010 at 19:32, Avery Pennarun <apenwarr@gmail.com> wrote:
>> - all those "extra commands" that git-svn supports are considered
>> backwards compatibility, even if they're absolutely obsolete because
>> of newer commands, and therefore will be very hard to justify getting
>> rid of
>
> I don't think this is true. The proposal is to implement
> git-remote-svn, which would allow _native_ interaction with svn
> repositories, so without using 'git svn'. It would allow 'git clone
> svn://example.com/myrepo' and subsequent "git pull"s from that svn
> source. Do you agree that makes (part of) your comments moot, or am I
> missing something?

I don't know enough about the proposal to comment on this part of the design.

I do know that where git-svn fits into git's UI has not been the
problem for me or my co-workers; we can learn some weirdo syntax if
needed.  Things like branching and merging, and git-svn redownloading
the same stuff 100 times, and oddly-named-svn-branch-hierarchies, and
git pulling between git-svn users, however, have given us lots of
grief.

For example, I'd be very happy to learn that your new design would
allow two people to independently pull from svn://, do work in their
respective copies of the git repositories, branch and merge all day
long, pull from each other, and then push back to svn without a)
making a mess of the svn repo and causing zillions of conflicts, or b)
linearizing history and losing git's complex DAG.

In the current version of git-svn this is very hard. 'git svn dcommit'
generates entirely new git commit objects corresponding to the ones
that were created in svn... but which nevertheless have your merge
history included, which is awesome.  But if a new person clones the
svn repo from scratch, he will end up with git commits corresponding
to those same ones from svn, but *without* the merge history, and
therefore with different commit ids, and which therefore prevent
push/pulling between other people who have cloned the repo.

If the above explanation doesn't make any sense, let me know and I can
clarify it further.  If you know what I'm talking about and have
either solved it or don't care about that use case, please just ignore
me and I'll go back to hide in my hole :)

Have fun,

Avery

  reply	other threads:[~2010-03-19 21:30 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-19 17:18 native-git-svn: A Summer of Code 2010 proposal Ramkumar Ramachandra
2010-03-19 18:32 ` Avery Pennarun
2010-03-19 18:39   ` Sverre Rabbelier
2010-03-19 21:30     ` Avery Pennarun [this message]
2010-03-20  9:19       ` Ramkumar Ramachandra
2010-03-20 10:48       ` Johannes Schindelin
2010-03-20 20:34         ` Ramkumar Ramachandra
2010-03-20 20:55           ` Ramkumar Ramachandra
2010-03-20 21:04           ` Jonathan Nieder
2010-03-21 10:26             ` Johannes Schindelin
2010-03-21 11:08               ` Jonathan Nieder
2010-03-21 11:47                 ` Johannes Schindelin
2010-03-21 12:25                   ` Ramkumar Ramachandra
2010-03-21 12:31                     ` Johannes Schindelin
2010-03-21 12:36                     ` Sverre Rabbelier
2010-03-21 17:58                     ` Jonathan Nieder
2010-03-22  0:33                     ` Daniel Barkalow
2010-03-22  2:41                       ` Christian Couder
2010-03-22  3:49                         ` Ramkumar Ramachandra
2010-03-22 11:33                           ` Johannes Schindelin
     [not found]                             ` <f3271551003220643j3a726d09o2d3a078292fd8bf6@mail.gmail.com>
2010-03-22 19:52                               ` Johannes Schindelin
2010-03-23  7:49                                 ` Ramkumar Ramachandra
2010-03-21 16:43                   ` Best example of GSoC student participation (was: Re: native-git-svn: A Summer of Code 2010 proposal) Jakub Narebski
2010-03-21 17:27                     ` Best example of GSoC student participation Johannes Schindelin
2010-03-20 21:58           ` native-git-svn: A Summer of Code 2010 proposal Daniel Barkalow
2010-03-20 22:19             ` Ramkumar Ramachandra
2010-03-21  5:36             ` Ramkumar Ramachandra
2010-03-21 22:56               ` Daniel Barkalow
2010-03-21 17:08             ` Ilari Liusvaara
2010-03-21  7:40           ` Peter Baumann
2010-03-21 23:51       ` Dave Olszewski
2010-03-19 20:53   ` Jonathan Nieder
2010-03-19 21:00     ` Johannes Schindelin
  -- strict thread matches above, loose matches on Subject: below --
2010-03-27  5:40 Steven Michalske
2010-03-27  6:46 ` Ramkumar Ramachandra
2010-03-27  8:03   ` Steven Michalske
2010-03-27  9:19 ` Eric Raymond
     [not found]   ` <f3271551003280225v17af30d4s6d3d24b4d548ff7d@mail.gmail.com>
2010-03-28 12:10     ` Eric Raymond
2010-03-29 20:04       ` Ramkumar Ramachandra

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=32541b131003191430ld0eaa9cw1d2aac08cff15682@mail.gmail.com \
    --to=apenwarr@gmail.com \
    --cc=artagnon@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=srabbelier@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).