Re: [PATCH] git-svn: update documentation with CAVEATS section

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Eric Wong <normalperson@xxxxxxxx> writes:

> David Kastrup <dak@xxxxxxx> wrote:
>> Junio C Hamano <gitster@xxxxxxxxx> writes:
>> 
>> > Eric Wong <normalperson@xxxxxxxx> writes:
>> >
>> >>   I've been meaning to do this for a while, hopefully this cuts
>> >>   down on the redundant mailing list traffic about these subjects.
>> >> ...
>> >> +CAVEATS
>> >> +-------
>> >> +
>> >> +For the sake of simplicity and interoperating with a less-capable system
>> >> +(SVN), it is recommended that all git-svn users clone, fetch and dcommit
>> >> +directly from the SVN server, and avoid all git-clone/pull/merge/push
>> >> +operations between git repositories and branches.  The recommended
>> >> +method of exchanging code between git branches and users is
>> >> +git-format-patch and git-am, or just dcommiting to the SVN repository.
>> >> +
>> >> +Running 'git-merge' or 'git-pull' is NOT recommended on a branch you
>> >> +plan to dcommit from.  Subversion does not represent merges in any
>> >> +reasonable or useful fashion; so users using Subversion cannot see any
>> >> +merges you've made.
>> >
>> > Ok, my ruling before 1.5.3 is to take this patch, and encourage
>> > interested parties to help Eric adding reliable support for the
>> > feature after that, if such is possible.
>> 
>> Couldn't we at least get a _documentation_ of the current behavior
>> when actually using git for branch work?  Knowing what will fail how
>> and when is not as good as things just working as one would expect,
>> but it certainly beats obscure warnings.
>> 
>> For example, I consider it rather unacceptable that nowhere is
>> documented just _how_ git-svn chooses one Subversion branch to commit
>> to.
>
> dcommit always chooses the last SVN branch it branched off from.

No, it doesn't.  That's the problem.  If I do
git-merge master
in a side branch, and do git-svn dcommit afterwards, the commit
goes to the master branch.

Which is utterly unexpected.

>> It also drastically misrepresents the consequences: the problem is
>> _not_ that users using Subversion cannot see merges.  That is
>> something that one can readily accept.  The problem is that git-svn
>> will dcommit to a seemingly random branch.
>
> Interesting, I've never considered it a problem (probably because
> I know and trust the code I wrote :).  Good idea though.
>
> Junio: could you please apply the following trivial patch?  Thanks.
>
> From a8ae91019a2ededd0e3d455fdd78655c086ea3b3 Mon Sep 17 00:00:00 2001
> From: Eric Wong <normalperson@xxxxxxxx>
> Date: Wed, 22 Aug 2007 22:14:31 -0700
> Subject: [PATCH] git-svn: dcommit prints out the URL to be committed to
>
> This will print out the URL that dcommit will operate on.
> If used with --dry-run this will print out the URL without
> making changes to the repository.
>
> Signed-off-by: Eric Wong <normalperson@xxxxxxxx>
Acked-by: David Kastrup<dak@xxxxxxx>

This is already a _large_ help for avoiding clobbering the central
repository.  But I stress that it would be much better if git-svn
dcommit/rebase stayed exclusively on the branch that is associated
with it/fetching in the "svn" config section, like git does in general
with remotes.  No random branch jumping after merges or (to be
_really_ avoided) rebases and certainly after cherry-picking within
git.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux