Re: [RFC] git-svn: make git-svn commit-diff able to work without explicit arguments
- From
- Eric Wong <normalperson@yhbt.net>
- Date
- Jan 2, 2007, 19:18 UTC
- Message-ID
- <20070102191810.GA18856@localdomain>
- In-Reply-To
- <459AA31E.5070705@gmail.com>
Steve Fr?cinaux <nudrema@gmail.com> wrote:
Show 18 quoted lines
> Hello, > > When using git-svn to access a SVN repo, the commit policy may vary. > While git makes you commit small patches often, svn users tend to prefer > bigger patches that implement a functionnality at once. > > So at the end you have a SVN commit which corresponds to several git ones. > > What you can do in this case is : > > git-svn commit-diff --edit -r$REV remotes/git-svn HEAD > > Which effect is that it commits (at once) all the commits between the > latest svn fetch and HEAD. > > What I'm proposing here is this: > > - use the latest fetched rev the default for the -r argument.
Yes, this is very important.
Show 9 quoted lines
> - use remotes/git-svn and HEAD the defaults for the treeish objects. > > A smarter way to take these defaults would be to take the last revision > in the current branch (which can be something else than git-svn if it > wasn't rebased/merged recently) and the relevant commit in the current > branch. > > Additionnaly, --edit could be enabled by default if -m is not set and it > is used interactively, eventually using an option in repo-config.
This sounds useful. This is basically what 'set-tree' (the command formerly known as 'commit') was meant to do originally. Unlike set-tree (or perhaps with modifying set-tree), this should rebase or reset afterwards to linearize history like 'dcommit'.
-- Eric Wong