Re: [PATCH] git-add: introduce --edit (to edit the diff vs. the index)
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Apr 10, 2009, 18:10 UTC
- Message-ID
- <alpine.DEB.1.00.0904102009440.10279@pacific.mpi-cbg.de>
- In-Reply-To
- <46dff0320904091843p3e034647j3c78506b4d0c2b4@mail.gmail.com>
Hi,
On Fri, 10 Apr 2009, Ping Yin wrote:
Show 34 quoted lines
> On Thu, Apr 9, 2009 at 10:00 AM, Ping Yin <pkufranky@gmail.com> wrote: > > On Thu, Apr 9, 2009 at 5:30 AM, Johannes Schindelin > > <johannes.schindelin@gmx.de> wrote: > >> With "git add -e [<files>]", Git will fire up an editor with the current > >> diff relative to the index (i.e. what you would get with "git diff > >> [<files>]"). > >> > >> Now you can edit the patch as much as you like, including adding/removing > >> lines, editing the text, whatever. Make sure, though, that the first > >> character of the hunk lines is still a space, a plus or a minus. > >> > >> After you closed the editor, Git will adjust the line counts of the hunks > >> if necessary, thanks to the --recount option of apply, and commit the > >> patch. Except if you deleted everything, in which case nothing happens > >> (for obvious reasons). > >> > >> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> > >> --- > >> > >> I actually promised myself not to resend this patch, but a > >> certain guy who has a hat now asked for it. > >> > > > > I am that guy :-). Thanks. Sometimes "add -e" is more useful than "add > > -p" since i can see the full context when editing the patch. However, > > sometimes the ability to edit the index directly is even more useful. > > For example, if it's a big change (or rewritten), it is hard to edit > > the patch instead of the index (in diff mode with the worktree file > > side by side). I even encounter a case that i can't beat the patch > > into a shape i want when using 'add -p' ( it will fail to apply) > > > > How about this? > 'add --edit=patch' to edit the patch and "add --edit=index" to edit the index
As others have mentioned, there _is_ a reason we have a working directory. Please understand this as a "I do not like the idea of editing the index directly at all".
Ciao, Dscho