From: "Randall S. Becker" <rsbecker@nexbridge.com>
To: "'Ed Avis'" <eda@waniasset.com>, <git@vger.kernel.org>
Subject: RE: git switch and restore user interface
Date: Mon, 19 Aug 2019 06:51:48 -0400 [thread overview]
Message-ID: <00f701d5567c$1d9fe810$58dfb830$@nexbridge.com> (raw)
In-Reply-To: <a3a66e58b1e44e88b9c11655c7c77e87@WCL-EX13MBX.wcl.local>
On August 19, 2019 5:41 AM, Ed Avis wrote:
> To: git@vger.kernel.org
> Subject: git switch and restore user interface
>
> I think it would be helpful for git switch to print a reminder of the old
and
> new branches.
>
> Hi, a couple of suggestions for these experimental new commands. Git
> switch should print the branch you are leaving:
>
> % git switch foo
> You were previously on branch bar (abcdef).
> You are now on branch foo (bcdef0).
>
> Sometimes I forget what branch I was on before and having it in the
terminal
> history would help a lot.
>
>
> For git restore, it might be worth splitting the command further, into
'safe
> restore' and 'destructive restore'. The safe command would always stop
> rather than lose data:
>
> % git safe-restore .
> The following local changes would be overwritten:
> Fee.c
> Foe.c
> Stash them first, or (etc etc).
>
> The command that unconditionally overwrites working copy changes should
> be given a different and more dangerous-sounding name.
>
> The reason I suggest this is to make sure of a sensible answer to the
> newcomer's question: "I just deleted a file by mistake in my working copy,
> how do I get it back from git?". Too often at the moment the answer is
"git
> checkout ." which while correct is also much too dangerous to be a first
> resort. There should be an obvious and safe command for restoring missing
> files without losing local changes.
>
> In fact, I'd be quite happy for it to be like git clean, which in the
default
> configuration requires some flag like -f to make it lose any local
changes,
> even though the very purpose of git clean is to delete files.
I would be happier to have git restore --stash or some configuration option,
like restore.stash=auto that has git automatically stash on a restore. But
would the stash include everything or just the paths you are restoring? It
might be nice to teach git clean the same option.
Cheers,
Randall
prev parent reply other threads:[~2019-08-19 10:52 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-19 9:41 git switch and restore user interface Ed Avis
2019-08-19 10:51 ` Randall S. Becker [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='00f701d5567c$1d9fe810$58dfb830$@nexbridge.com' \
--to=rsbecker@nexbridge.com \
--cc=eda@waniasset.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).