Thread (11 messages) read the whole thread 11 messages, 4 authors, 2021-08-11

Re: [PATCH 6/7] stage: add 'diff' subcommand

From: Felipe Contreras <hidden>
Date: 2021-08-11 17:17:38

Junio C Hamano wrote:
A more notable aspect of the above list is not the similarity but
difference from the rest of Git.  The above organizes various
operations on the staging area in a single command as its operating
modes, so you'd use "git stage --diff" for comparing with the
staging area but use something else ("git commit --diff HEAD"???).
It is not different from the rest of git:

 * git branch --delete
 * git tag --delete
 * git remote remove
 * git stash drop
 * git worktree remove
 * git submodule add
 * git config --edit
 * git notes remove
 * git bundle create
 * git bisect start

Plus it's not unusual for commands and options to be redundant,
especially when they attempt to simplify or improve the user interface,
starting with `git checkout` / `git switch`.
It is a good example that illustrates that the proposed organization
may not help learning or using the system for operations that also
apply to other things like commit and working tree (in other words,
"git stage --grep" may not be such a good idea for the same reason
as "git stage --diff").  But if it were limited to operations that
apply only to the index (e.g. "git add" and "git rm"), it may be an
improvement (I think we added "git stage" synonym exactly for that
reason, already).

Having said that, if we added "git stage --remove", there may be
complaints that say "the stage command does too many things",
Or there might not.
just like those that caused "checkout" to be split into "restore"
(check out contents for selected paths in order to work on the current
branch) and "switch" (check out a branch in order to start working on
it).  I dunno.
I don't see many people complaining that `git branch` does "too many
things", neither `git stash` or any of the commands listed above.

Moreover, you are not addressing the most interesting thing my proposal
enables:

  git stage --edit

-- 
Felipe Contreras
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help