Re: Extended splitting for "git add --interactive"
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Nov 26, 2014, 18:57 UTC
- Message-ID
- <xmqq3895rdr1.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <5475F7E7020000A100018050@gwsmtp1.uni-regensburg.de>
"Ulrich Windl" <Ulrich.Windl@rz.uni-regensburg.de> writes:
> This is for git-1.7.12 (an older version from the SLES11 SP3 SDK). If > the issue is solved meanwhile, I'll be happy, and I apologize for > being too lazy to find out.
The answer is no ;-).
Show 13 quoted lines
> Currently Git cannot split a block of changes like > > -AAA > -BBB > +CCC > +DDD > > Into > -AAA > +CCC > and > -BBB > +DDD
And it is unlikely to do so ever, because it is a wrong thing to do.
What makes the user happy to see above split when the user is expecting this instead?
-AAA and -BBB +CCC +DDD
Show 5 quoted lines
> Another split that is not possible is a split across an empty line, like: > > +AAA > + <empty line (in reality)> > +BBB
Likewise. An empty line is not that special. AAA may be adding one block of lines "if (condition) { ... }" and BBB may be another, and it often happens that you would want to separate these into two changes, with or without an empty line in between.
+if (foo) {
+ do foo thing
+}
+if (bar) {
+ do bar thing
+}
Having said all that, I am not opposed to a usable idea to allow the
user to specify where in a contiguous block of -*+* to break a hunk
and how.