From: "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
To: pclouds@gmail.com
Cc: git@vger.kernel.org, "Eric Sunshine" <sunshine@sunshineco.com>,
"SZEDER Gábor" <szeder.dev@gmail.com>,
"Junio C Hamano" <gitster@pobox.com>
Subject: [PATCH v2 00/19] Add new command "switch"
Date: Fri, 8 Feb 2019 16:03:42 +0700 [thread overview]
Message-ID: <20190208090401.14793-1-pclouds@gmail.com> (raw)
In-Reply-To: <20190130094831.10420-1-pclouds@gmail.com>
This series adds a new command "switch" for switching branches, an
alternative for "git checkout".
v2 fixes the comments I got from v1. I think the range-diff below
summarizes it better than I do. No major changes though.
Range-diff dựa trên v1:
1: 6d550b443c ! 1: 2283204090 checkout: split part of it to new command switch
@@ -148,24 +148,33 @@
+--------
+[verse]
+'git switch' [<options>] [--guess] <branch>
-+'git switch' [<options>] --detach [<start_point>>]
-+'git switch' [<options>] [[-c|-C|--orphan] <new_branch>] [<start_point>]
++'git switch' [<options>] --detach [<start-point>]
++'git switch' [<options>] (-c|-C|--orphan) <new-branch> [<start-point>]
+
+DESCRIPTION
+-----------
-+Switch to a specified branch and update files in the working tree to
-+match it. Optionally a new branch could be created with either `-c` or
-+`-C`, or detach from any branch with `--detach`, along with switching.
++Switch to a specified branch. The working tree and the index are
++updated to match the branch. All new commits will be added to the tip
++of this branch.
++
++Optionally a new branch could be created with either `-c` or `-C`, or
++detach the working tree from any branch with `--detach`, along with
++switching.
++
++Switching branches does not require a clean index and working tree
++(i.e. no differences compared to 'HEAD'). The operation is aborted
++however if the switch leads to loss of local changes, unless told
++otherwise.
+
+OPTIONS
+-------
+<branch>::
+ Branch to switch to.
+
-+<new_branch>::
++<new-branch>::
+ Name for the new branch.
+
-+<start_point>::
++<start-point>::
+ The name of a commit at which to switch to before creating a
+ new branch or detach from.
++
@@ -177,17 +186,27 @@
+base of `A` and `B` if there is exactly one merge base. You can leave
+out at most one of `A` and `B`, in which case it defaults to `HEAD`.
+
-+-c <new_branch>::
-+--create <new_branch>::
-+ Create a new branch named <new_branch> and start it at
-+ <start_point>; see linkgit:git-branch[1] for details.
++-c <new-branch>::
++--create <new-branch>::
++ Create a new branch named <new-branch> starting at
++ <start-point> before switching to the branch. This is a
++ convenient shortcut for:
+++
++------------
++$ git branch <new-branch>
++$ git switch <new-branch>
++------------
+
-+-C <new_branch>::
-+--force-create <new_branch>::
-+ Creates the branch <new_branch> and start it at <start_point>;
-+ if it already exists, then reset it to <start_point>. This is
-+ equivalent to running "git branch" with "-f"; see
-+ linkgit:git-branch[1] for details.
++-C <new-branch>::
++--force-create <new-branch>::
++ Similar to `--create` except that if <new-branch> already
++ exists, it will be reset to <start-point>. This is a
++ convenient shortcut for:
+++
++------------
++$ git branch -f <new-branch>
++$ git switch <new-branch>
++------------
+
+-d::
+--detach::
@@ -220,7 +239,9 @@
+-f::
+--force::
+ Proceed even if the index or the working tree differs from
-+ HEAD. This is used to throw away local changes.
++ HEAD. Both the index and working tree are restored to match
++ the switching target. This is used to throw away local
++ changes.
+
+--[no-]progress::
+ Progress status is reported on the standard error stream
@@ -270,9 +291,9 @@
+ "merge" (default) and "diff3" (in addition to what is shown by
+ "merge" style, shows the original contents).
+
-+--orphan <new_branch>::
-+ Create a new 'orphan' branch, named <new_branch>, started from
-+ <start_point> and switch to it. See explanation of the same
++--orphan <new-branch>::
++ Create a new 'orphan' branch, named <new-branch>, started from
++ <start-point> and switch to it. See explanation of the same
+ option in linkgit:git-checkout[1] for details.
+
+--ignore-other-worktrees::
2: e2f94df471 ! 2: deceb221dc switch: better names for -b and -B
@@ -61,7 +61,7 @@
+ OPT_STRING('c', "create", &opts.new_branch, N_("branch"),
+ N_("create and switch to a new branch")),
+ OPT_STRING('C', "force-create", &opts.new_branch_force, N_("branch"),
-+ N_("create/reset and switch to a new branch")),
++ N_("create/reset and switch to a branch")),
+ OPT_END()
+ };
int ret;
3: b3d431a97f = 3: 08f28e9726 switch: remove -l
4: 26738818fa = 4: 9ee4852c8b switch: stop accepting pathspec
5: 79ebe7a68c ! 5: 0a7ea4b33b switch: reject "do nothing" case
@@ -32,7 +32,7 @@
+ !new_branch_info->name &&
+ !opts->new_branch &&
+ !opts->force_detach)
-+ die(_("nothing to do"));
++ die(_("missing branch or commit argument"));
+
if (new_branch_info->path && !opts->force_detach && !opts->new_branch &&
!opts->ignore_other_worktrees) {
6: bc36ac8510 ! 6: eedf82c72b switch: only allow explicit detached HEAD
@@ -26,7 +26,7 @@
int ignore_skipworktree;
@@
!opts->force_detach)
- die(_("nothing to do"));
+ die(_("missing branch or commit argument"));
+ if (!opts->implicit_detach &&
+ !opts->force_detach &&
7: 1a761ce8e5 = 7: 9314ff16c9 switch: add short option for --detach
8: 738c560eb9 ! 8: 9d8e461df2 switch: no implicit dwim, use --guess to dwim
@@ -143,7 +143,7 @@
@@
N_("create and switch to a new branch")),
OPT_STRING('C', "force-create", &opts.new_branch_force, N_("branch"),
- N_("create/reset and switch to a new branch")),
+ N_("create/reset and switch to a branch")),
+ OPT_BOOL('g', "guess", &opts.dwim_new_local_branch,
+ N_("second guess 'git switch <no-such-branch>'")),
OPT_END()
9: 456e9340f1 = 9: 749665c457 switch: no worktree status unless real branch switch happens
10: cdd132a7e2 ! 10: e4e0b397eb t: add tests for switch
@@ -51,9 +51,7 @@
+test_expect_success 'switch and create branch' '
+ test_when_finished git switch master &&
+ git switch -c temp master^ &&
-+ git rev-parse master^ >expected &&
-+ git rev-parse refs/heads/temp >actual &&
-+ test_cmp expected actual &&
++ test_cmp_rev master^ refs/heads/temp &&
+ echo refs/heads/temp >expected-branch &&
+ git symbolic-ref HEAD >actual-branch &&
+ test_cmp expected-branch actual-branch
@@ -63,9 +61,7 @@
+ test_when_finished git switch master &&
+ git switch --detach master &&
+ git switch -C temp &&
-+ git rev-parse master >expected &&
-+ git rev-parse refs/heads/temp >actual &&
-+ test_cmp expected actual &&
++ test_cmp_rev master refs/heads/temp &&
+ echo refs/heads/temp >expected-branch &&
+ git symbolic-ref HEAD >actual-branch &&
+ test_cmp expected-branch actual-branch
11: 96a97fcab4 = 11: b9a7662271 completion: support switch
12: 8d984bc684 ! 12: 7449a0c4cc doc: promote "git switch"
@@ -40,14 +40,18 @@
+
<1> This step and the next one could be combined into a single step with
@@
+ NOTES
-----
- If you are creating a branch that you want to checkout immediately, it is
+-If you are creating a branch that you want to checkout immediately, it is
-easier to use the git checkout command with its `-b` option to create
-+easier to use the "git switch" command with its `-c` option to create
- a branch and check it out with a single command.
+-a branch and check it out with a single command.
++If you are creating a branch that you want to switch to immediately,
++it is easier to use the "git switch" command with its `-c` option to
++do the same thing with a single command.
The options `--contains`, `--no-contains`, `--merged` and `--no-merged`
+ serve four related but different purposes:
diff --git a/Documentation/git-check-ref-format.txt b/Documentation/git-check-ref-format.txt
--- a/Documentation/git-check-ref-format.txt
@@ -473,9 +477,11 @@
------------------------------------------------------
-The `git checkout` command normally expects a branch head, but will also
+-accept an arbitrary commit; for example, you can check out the commit
+-referenced by a tag:
+The `git switch` command normally expects a branch head, but will also
- accept an arbitrary commit; for example, you can check out the commit
- referenced by a tag:
++accept an arbitrary commit when invoked with --detach; for example,
++you can check out the commit referenced by a tag:
------------------------------------------------
-$ git checkout v2.6.17
@@ -628,36 +634,23 @@
{
const char *fmt =
- _("Note: checking out '%s'.\n\n"
-+ _("Note: checking out '%s'.\n"
++ _("Note: switching to '%s'.\n"
+ "\n"
"You are in 'detached HEAD' state. You can look around, make experimental\n"
"changes and commit them, and you can discard any commits you make in this\n"
- "state without impacting any branches by performing another checkout.\n\n"
-+ "state without impacting any branches by performing another checkout.\n"
++ "state without impacting any branches by switching back to a branch.\n"
+ "\n"
"If you want to create a new branch to retain commits you create, you may\n"
- "do so (now or later) by using -b with the checkout command again. Example:\n\n"
- " git checkout -b <new-branch-name>\n\n");
-+ "do so (now or later) by using -b with the checkout command again. Example:\n"
++ "do so (now or later) by using -c with the switch command. Example:\n"
+ "\n"
+ " git switch -c <new-branch-name>\n\n");
fprintf(stderr, fmt, new_name);
}
- diff --git a/builtin/clone.c b/builtin/clone.c
- --- a/builtin/clone.c
- +++ b/builtin/clone.c
-@@
- static const char junk_leave_repo_msg[] =
- N_("Clone succeeded, but checkout failed.\n"
- "You can inspect what was checked out with 'git status'\n"
-- "and retry the checkout with 'git checkout -f HEAD'\n");
-+ "and retry the checkout with 'git switch -f HEAD'\n");
-
- static void remove_junk(void)
- {
-
diff --git a/sha1-name.c b/sha1-name.c
--- a/sha1-name.c
+++ b/sha1-name.c
@@ -675,8 +668,20 @@
--- a/t/t2020-checkout-detach.sh
+++ b/t/t2020-checkout-detach.sh
@@
+
+ # The first detach operation is more chatty than the following ones.
+ cat >1st_detach <<-EOF &&
+- Note: checking out 'HEAD^'.
++ Note: switching to 'HEAD^'.
+
+ You are in 'detached HEAD' state. You can look around, make experimental
+ changes and commit them, and you can discard any commits you make in this
+- state without impacting any branches by performing another checkout.
++ state without impacting any branches by switching back to a branch.
+
If you want to create a new branch to retain commits you create, you may
- do so (now or later) by using -b with the checkout command again. Example:
+- do so (now or later) by using -b with the checkout command again. Example:
++ do so (now or later) by using -c with the switch command. Example:
- git checkout -b <new-branch-name>
+ git switch -c <new-branch-name>
@@ -684,8 +689,20 @@
HEAD is now at \$commit three
EOF
@@
+
+ # The first detach operation is more chatty than the following ones.
+ cat >1st_detach <<-EOF &&
+- Note: checking out 'HEAD^'.
++ Note: switching to 'HEAD^'.
+
+ You are in 'detached HEAD' state. You can look around, make experimental
+ changes and commit them, and you can discard any commits you make in this
+- state without impacting any branches by performing another checkout.
++ state without impacting any branches by switching back to a branch.
+
If you want to create a new branch to retain commits you create, you may
- do so (now or later) by using -b with the checkout command again. Example:
+- do so (now or later) by using -b with the checkout command again. Example:
++ do so (now or later) by using -c with the switch command. Example:
- git checkout -b <new-branch-name>
+ git switch -c <new-branch-name>
13: 91e5442069 < -: ---------- checkout: split part of it to new command restore
14: 6bc8f87c0a < -: ---------- restore: take tree-ish from --from option instead
15: 095a1cd3e3 < -: ---------- restore: make pathspec mandatory
16: 6eb5612187 < -: ---------- restore: disable overlay mode by default
17: cc79522047 < -: ---------- t: add tests for restore
18: ed5d7097b6 < -: ---------- completion: support restore
19: 625a4fac68 < -: ---------- doc: promote "git restore"
Nguyễn Thái Ngọc Duy (19):
git-checkout.txt: fix one syntax line
doc: document --overwrite-ignore
t: rename t2014-switch.sh to t2014-checkout-switch.sh
checkout: factor out some code in parse_branchname_arg()
checkout: make "opts" in cmd_checkout() a pointer
checkout: move 'confict_style' and 'dwim_..' to checkout_opts
checkout: split options[] array in three pieces
checkout: split part of it to new command switch
switch: better names for -b and -B
switch: remove -l
switch: stop accepting pathspec
switch: reject "do nothing" case
switch: only allow explicit detached HEAD
switch: add short option for --detach
switch: no implicit dwim, use --guess to dwim
switch: no worktree status unless real branch switch happens
t: add tests for switch
completion: support switch
doc: promote "git switch"
.gitignore | 1 +
Documentation/config/advice.txt | 13 +-
Documentation/config/branch.txt | 4 +-
Documentation/config/checkout.txt | 17 +-
Documentation/config/diff.txt | 3 +-
Documentation/git-branch.txt | 12 +-
Documentation/git-check-ref-format.txt | 3 +-
Documentation/git-checkout.txt | 48 +-
Documentation/git-format-patch.txt | 2 +-
Documentation/git-merge-base.txt | 2 +-
Documentation/git-merge.txt | 4 +
Documentation/git-rebase.txt | 2 +-
Documentation/git-remote.txt | 2 +-
Documentation/git-rerere.txt | 10 +-
Documentation/git-reset.txt | 20 +-
Documentation/git-stash.txt | 9 +-
Documentation/git-switch.txt | 257 ++++++++++
Documentation/gitattributes.txt | 3 +-
Documentation/gitcore-tutorial.txt | 18 +-
Documentation/giteveryday.txt | 24 +-
Documentation/githooks.txt | 8 +-
Documentation/gittutorial.txt | 4 +-
Documentation/revisions.txt | 2 +-
Documentation/user-manual.txt | 56 +--
Makefile | 1 +
advice.c | 11 +-
builtin.h | 1 +
builtin/checkout.c | 464 +++++++++---------
command-list.txt | 1 +
contrib/completion/git-completion.bash | 26 +
git.c | 1 +
parse-options-cb.c | 17 +
parse-options.h | 3 +-
sha1-name.c | 2 +-
t/t1090-sparse-checkout-scope.sh | 14 -
...014-switch.sh => t2014-checkout-switch.sh} | 0
t/t2020-checkout-detach.sh | 16 +-
t/t2060-switch.sh | 87 ++++
38 files changed, 796 insertions(+), 372 deletions(-)
create mode 100644 Documentation/git-switch.txt
rename t/{t2014-switch.sh => t2014-checkout-switch.sh} (100%)
create mode 100755 t/t2060-switch.sh
--
2.20.1.682.gd5861c6d90
next prev parent reply other threads:[~2019-02-08 9:04 UTC|newest]
Thread overview: 289+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-30 9:48 [PATCH 00/19] Add new command "switch" Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 01/19] git-checkout.txt: fix one syntax line Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 02/19] doc: document --overwrite-ignore Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 03/19] t: rename t2014-switch.sh to t2014-checkout-switch.sh Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 04/19] checkout: factor out some code in parse_branchname_arg() Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 05/19] checkout: make "opts" in cmd_checkout() a pointer Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 06/19] checkout: move 'confict_style' and 'dwim_..' to checkout_opts Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 07/19] checkout: split options[] array in three pieces Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 08/19] checkout: split part of it to new command switch Nguyễn Thái Ngọc Duy
2019-01-31 0:50 ` Eric Sunshine
2019-01-31 5:29 ` Duy Nguyen
2019-01-31 6:24 ` Eric Sunshine
2019-01-31 7:20 ` Eric Sunshine
2019-01-31 7:43 ` Duy Nguyen
2019-01-31 7:51 ` Eric Sunshine
2019-01-31 9:21 ` [PATCH] git-commit.txt: better description what it does Nguyễn Thái Ngọc Duy
2019-01-31 10:49 ` Eric Sunshine
2019-01-31 11:04 ` Duy Nguyen
2019-02-01 0:21 ` Eric Sunshine
2019-02-01 10:09 ` [PATCH v2] " Nguyễn Thái Ngọc Duy
2019-02-04 17:59 ` Junio C Hamano
2019-01-31 13:06 ` [PATCH 08/19] checkout: split part of it to new command switch SZEDER Gábor
2019-01-31 13:09 ` SZEDER Gábor
2019-02-08 8:46 ` Duy Nguyen
2019-01-30 9:48 ` [PATCH 09/19] switch: better names for -b and -B Nguyễn Thái Ngọc Duy
2019-01-31 7:03 ` Eric Sunshine
2019-01-30 9:48 ` [PATCH 10/19] switch: remove -l Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 11/19] switch: stop accepting pathspec Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 12/19] switch: reject "do nothing" case Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 13/19] switch: only allow explicit detached HEAD Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 14/19] switch: add short option for --detach Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 15/19] switch: no implicit dwim, use --guess to dwim Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 16/19] switch: no worktree status unless real branch switch happens Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 17/19] t: add tests for switch Nguyễn Thái Ngọc Duy
2019-01-31 7:18 ` Eric Sunshine
2019-01-30 9:48 ` [PATCH 18/19] completion: support switch Nguyễn Thái Ngọc Duy
2019-01-30 9:48 ` [PATCH 19/19] doc: promote "git switch" Nguyễn Thái Ngọc Duy
2019-01-31 7:39 ` Eric Sunshine
2019-01-31 11:28 ` Duy Nguyen
2019-01-31 13:37 ` [PATCH 00/19] Add new command "switch" SZEDER Gábor
2019-01-31 14:51 ` Duy Nguyen
2019-01-31 18:23 ` Junio C Hamano
2019-02-02 11:06 ` Duy Nguyen
2019-01-31 18:13 ` Junio C Hamano
2019-02-08 9:03 ` Nguyễn Thái Ngọc Duy [this message]
2019-02-08 9:03 ` [PATCH v2 01/19] git-checkout.txt: fix one syntax line Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 02/19] doc: document --overwrite-ignore Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 03/19] t: rename t2014-switch.sh to t2014-checkout-switch.sh Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 04/19] checkout: factor out some code in parse_branchname_arg() Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 05/19] checkout: make "opts" in cmd_checkout() a pointer Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 06/19] checkout: move 'confict_style' and 'dwim_..' to checkout_opts Nguyễn Thái Ngọc Duy
2019-02-15 22:38 ` Junio C Hamano
2019-02-08 9:03 ` [PATCH v2 07/19] checkout: split options[] array in three pieces Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 08/19] checkout: split part of it to new command switch Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 09/19] switch: better names for -b and -B Nguyễn Thái Ngọc Duy
2019-02-11 4:02 ` Eric Sunshine
2019-02-08 9:03 ` [PATCH v2 10/19] switch: remove -l Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 11/19] switch: stop accepting pathspec Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 12/19] switch: reject "do nothing" case Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 13/19] switch: only allow explicit detached HEAD Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 14/19] switch: add short option for --detach Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 15/19] switch: no implicit dwim, use --guess to dwim Nguyễn Thái Ngọc Duy
2019-02-10 8:37 ` Eric Sunshine
2019-02-08 9:03 ` [PATCH v2 16/19] switch: no worktree status unless real branch switch happens Nguyễn Thái Ngọc Duy
2019-02-08 9:03 ` [PATCH v2 17/19] t: add tests for switch Nguyễn Thái Ngọc Duy
2019-02-08 9:04 ` [PATCH v2 18/19] completion: support switch Nguyễn Thái Ngọc Duy
2019-02-08 14:19 ` SZEDER Gábor
2019-02-09 5:30 ` Duy Nguyen
2019-02-08 9:04 ` [PATCH v2 19/19] doc: promote "git switch" Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 00/21] Add new command "switch" Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 01/21] git-checkout.txt: spell out --no-option Nguyễn Thái Ngọc Duy
2019-03-10 3:28 ` Eric Sunshine
2019-03-08 9:57 ` [PATCH v3 02/21] git-checkout.txt: fix one syntax line Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 03/21] doc: document --overwrite-ignore Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 04/21] git-checkout.txt: fix monospace typeset Nguyễn Thái Ngọc Duy
2019-03-09 12:35 ` Martin Ågren
2019-03-11 9:35 ` Duy Nguyen
2019-03-11 10:41 ` Martin Ågren
2019-03-08 9:57 ` [PATCH v3 05/21] t: rename t2014-switch.sh to t2014-checkout-switch.sh Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 06/21] checkout: factor out some code in parse_branchname_arg() Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 07/21] checkout: make "opts" in cmd_checkout() a pointer Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 08/21] checkout: move 'confict_style' and 'dwim_..' to checkout_opts Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 09/21] checkout: split options[] array in three pieces Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 10/21] checkout: split part of it to new command 'switch' Nguyễn Thái Ngọc Duy
2019-03-09 12:36 ` Martin Ågren
2019-03-10 22:57 ` Jacob Keller
2019-03-11 19:00 ` Elijah Newren
2019-03-11 11:16 ` Phillip Wood
2019-03-11 11:47 ` Duy Nguyen
2019-03-11 17:03 ` Phillip Wood
2019-03-12 11:54 ` Duy Nguyen
2019-03-11 17:24 ` Elijah Newren
2019-03-11 20:51 ` Phillip Wood
2019-03-11 22:04 ` Elijah Newren
2019-03-12 10:58 ` Phillip Wood
2019-03-12 12:19 ` Duy Nguyen
2019-03-12 15:36 ` Eric Sunshine
2019-03-12 16:51 ` Elijah Newren
2019-03-12 17:28 ` Eric Sunshine
2019-03-13 1:55 ` Junio C Hamano
2019-03-14 9:17 ` Duy Nguyen
2019-03-14 11:02 ` Phillip Wood
2019-03-14 12:56 ` Duy Nguyen
2019-03-14 14:46 ` Elijah Newren
2019-03-18 2:03 ` Junio C Hamano
2019-03-18 12:06 ` Duy Nguyen
2019-03-18 19:10 ` Elijah Newren
2019-03-20 12:04 ` Duy Nguyen
2019-03-15 6:11 ` Jacob Keller
2019-03-12 11:58 ` Duy Nguyen
2019-03-12 17:05 ` Elijah Newren
2019-03-14 10:42 ` Phillip Wood
2019-03-14 3:29 ` Duy Nguyen
2019-03-14 5:59 ` Elijah Newren
2019-03-14 7:23 ` Junio C Hamano
2019-03-14 15:48 ` Elijah Newren
2019-03-14 4:39 ` Junio C Hamano
2019-03-14 14:13 ` Duy Nguyen
2019-03-17 6:00 ` [PATCH] unpack-trees: fix oneway_merge accidentally carry over stage index Nguyễn Thái Ngọc Duy
2019-03-18 3:58 ` Junio C Hamano
2019-03-18 9:24 ` Duy Nguyen
2019-03-18 9:40 ` Junio C Hamano
2019-03-18 11:38 ` [PATCH v2] " Nguyễn Thái Ngọc Duy
2019-03-18 15:40 ` Elijah Newren
2019-03-19 14:06 ` Phillip Wood
2019-03-20 0:41 ` Junio C Hamano
2019-03-20 9:50 ` Duy Nguyen
2019-03-26 12:50 ` [PATCH v3 10/21] checkout: split part of it to new command 'switch' Duy Nguyen
2019-03-26 15:01 ` Elijah Newren
2019-03-26 15:24 ` Duy Nguyen
2019-03-26 15:48 ` Elijah Newren
2019-03-26 15:57 ` Duy Nguyen
2019-03-27 10:24 ` Phillip Wood
2019-03-28 11:04 ` Duy Nguyen
2019-03-28 15:05 ` Elijah Newren
2019-03-28 16:23 ` Phillip Wood
2019-03-28 17:39 ` Elijah Newren
2019-03-29 11:04 ` Phillip Wood
2019-03-29 11:27 ` Duy Nguyen
2019-03-29 15:35 ` Elijah Newren
2019-04-25 10:20 ` Phillip Wood
2019-04-01 9:29 ` Junio C Hamano
2019-03-11 17:54 ` Elijah Newren
2019-03-12 11:06 ` Phillip Wood
2019-03-12 16:43 ` Elijah Newren
2019-03-14 11:00 ` Phillip Wood
2019-03-19 9:39 ` [PATCH] checkout.txt: note about losing staged changes with --merge Nguyễn Thái Ngọc Duy
2019-03-19 11:24 ` Phillip Wood
2019-03-20 0:23 ` Junio C Hamano
2019-03-20 0:40 ` Duy Nguyen
2019-03-20 1:19 ` Junio C Hamano
2019-03-20 1:22 ` Duy Nguyen
2019-03-20 1:50 ` Junio C Hamano
2019-03-20 13:53 ` Elijah Newren
2019-03-20 13:57 ` Duy Nguyen
2019-03-21 13:46 ` Elijah Newren
2019-03-21 0:38 ` Junio C Hamano
2019-03-13 11:05 ` [PATCH v3 10/21] checkout: split part of it to new command 'switch' Duy Nguyen
2019-03-13 14:36 ` Elijah Newren
2019-03-08 9:57 ` [PATCH v3 11/21] switch: better names for -b and -B Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 12/21] switch: remove -l Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 13/21] switch: stop accepting pathspec Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 14/21] switch: reject "do nothing" case Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 15/21] switch: only allow explicit detached HEAD Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 16/21] switch: add short option for --detach Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 17/21] switch: no implicit dwim, use --guess to dwim Nguyễn Thái Ngọc Duy
2019-03-13 18:36 ` Eckhard Maaß
2019-03-15 8:19 ` Eric Sunshine
2019-03-15 9:29 ` Duy Nguyen
2019-03-18 4:11 ` Junio C Hamano
2019-03-16 3:59 ` Duy Nguyen
2019-03-08 9:57 ` [PATCH v3 18/21] switch: no worktree status unless real branch switch happens Nguyễn Thái Ngọc Duy
2019-03-10 3:43 ` Eric Sunshine
2019-03-08 9:57 ` [PATCH v3 19/21] t: add tests for switch Nguyễn Thái Ngọc Duy
2019-03-10 3:59 ` Eric Sunshine
2019-03-10 10:09 ` Andrei Rybak
2019-03-08 9:57 ` [PATCH v3 20/21] completion: support switch Nguyễn Thái Ngọc Duy
2019-03-08 9:57 ` [PATCH v3 21/21] doc: promote "git switch" Nguyễn Thái Ngọc Duy
2019-03-08 17:48 ` [PATCH v3 00/21] Add new command "switch" Ramsay Jones
2019-03-09 11:56 ` Duy Nguyen
2019-03-17 12:49 ` [PATCH v4 00/26] Add new command 'switch' Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 01/26] git-checkout.txt: spell out --no-option Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 02/26] git-checkout.txt: fix one syntax line Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 03/26] doc: document --overwrite-ignore Nguyễn Thái Ngọc Duy
2019-03-17 19:18 ` Martin Ågren
2019-03-17 12:49 ` [PATCH v4 04/26] git-checkout.txt: fix monospace typeset Nguyễn Thái Ngọc Duy
2019-03-17 19:21 ` Martin Ågren
2019-03-17 12:49 ` [PATCH v4 05/26] t: rename t2014-switch.sh to t2014-checkout-switch.sh Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 06/26] checkout: advice how to get out of detached HEAD mode Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 07/26] checkout: keep most #include sorted Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 08/26] checkout: factor out some code in parse_branchname_arg() Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 09/26] checkout: make "opts" in cmd_checkout() a pointer Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 10/26] checkout: move 'confict_style' and 'dwim_..' to checkout_opts Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 11/26] checkout: split options[] array in three pieces Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 12/26] checkout: split part of it to new command 'switch' Nguyễn Thái Ngọc Duy
2019-03-18 16:48 ` Elijah Newren
2019-03-17 12:49 ` [PATCH v4 13/26] switch: better names for -b and -B Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 14/26] switch: add --discard-changes Nguyễn Thái Ngọc Duy
2019-03-18 23:55 ` Eric Sunshine
2019-03-17 12:49 ` [PATCH v4 15/26] switch: remove -l Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 16/26] switch: stop accepting pathspec Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 17/26] switch: reject "do nothing" case Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 18/26] switch: only allow explicit detached HEAD Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 19/26] switch: add short option for --detach Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 20/26] switch: implicit dwim, use --no-guess to disable it Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 21/26] switch: no worktree status unless real branch switch happens Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 22/26] switch: reject if some operation is in progress Nguyễn Thái Ngọc Duy
2019-03-20 11:16 ` Phillip Wood
2019-03-17 12:49 ` [PATCH v4 23/26] switch: --orphan defaults to empty tree as HEAD Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 24/26] t: add tests for switch Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 25/26] completion: support switch Nguyễn Thái Ngọc Duy
2019-03-17 12:49 ` [PATCH v4 26/26] doc: promote "git switch" Nguyễn Thái Ngọc Duy
2019-03-17 12:58 ` [PATCH v4 00/26] Add new command 'switch' Duy Nguyen
2019-03-18 4:54 ` Junio C Hamano
2019-03-18 12:13 ` Duy Nguyen
2019-03-19 0:43 ` Junio C Hamano
2019-03-21 13:16 ` [PATCH v5 " Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 01/26] git-checkout.txt: spell out --no-option Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 02/26] git-checkout.txt: fix one syntax line Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 03/26] doc: document --overwrite-ignore Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 04/26] git-checkout.txt: fix monospace typeset Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 05/26] t: rename t2014-switch.sh to t2014-checkout-switch.sh Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 06/26] checkout: advice how to get out of detached HEAD mode Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 07/26] checkout: keep most #include sorted Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 08/26] checkout: factor out some code in parse_branchname_arg() Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 09/26] checkout: make "opts" in cmd_checkout() a pointer Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 10/26] checkout: move 'confict_style' and 'dwim_..' to checkout_opts Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 11/26] checkout: split options[] array in three pieces Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 12/26] checkout: split part of it to new command 'switch' Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 13/26] switch: better names for -b and -B Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 14/26] switch: add --discard-changes Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 15/26] switch: remove -l Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 16/26] switch: stop accepting pathspec Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 17/26] switch: reject "do nothing" case Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 18/26] switch: only allow explicit detached HEAD Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 19/26] switch: add short option for --detach Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 20/26] switch: implicit dwim, use --no-guess to disable it Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 21/26] switch: no worktree status unless real branch switch happens Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 22/26] switch: reject if some operation is in progress Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 23/26] switch: make --orphan switch to an empty tree Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 24/26] t: add tests for switch Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 25/26] completion: support switch Nguyễn Thái Ngọc Duy
2019-03-21 13:16 ` [PATCH v5 26/26] doc: promote "git switch" Nguyễn Thái Ngọc Duy
2019-03-22 8:00 ` Andrei Rybak
2019-03-22 9:12 ` Duy Nguyen
2019-03-21 13:32 ` [PATCH v5 00/26] Add new command 'switch' Elijah Newren
2019-03-22 4:26 ` Junio C Hamano
2019-03-22 7:30 ` Duy Nguyen
2019-03-29 10:38 ` [PATCH v6 00/27] " Nguyễn Thái Ngọc Duy
2019-03-29 10:38 ` [PATCH v6 01/27] git-checkout.txt: spell out --no-option Nguyễn Thái Ngọc Duy
2019-03-29 10:38 ` [PATCH v6 02/27] git-checkout.txt: fix one syntax line Nguyễn Thái Ngọc Duy
2019-03-29 10:38 ` [PATCH v6 03/27] doc: document --overwrite-ignore Nguyễn Thái Ngọc Duy
2019-03-29 10:38 ` [PATCH v6 04/27] git-checkout.txt: fix monospace typeset Nguyễn Thái Ngọc Duy
2019-03-29 10:38 ` [PATCH v6 05/27] t: rename t2014-switch.sh to t2014-checkout-switch.sh Nguyễn Thái Ngọc Duy
2019-03-29 10:38 ` [PATCH v6 06/27] checkout: advice how to get out of detached HEAD mode Nguyễn Thái Ngọc Duy
2019-03-29 10:38 ` [PATCH v6 07/27] checkout: inform the user when removing branch state Nguyễn Thái Ngọc Duy
2019-07-02 8:06 ` SZEDER Gábor
2019-07-02 9:03 ` Duy Nguyen
2019-07-02 10:43 ` SZEDER Gábor
2019-07-02 17:51 ` Junio C Hamano
2019-07-04 23:57 ` Duy Nguyen
2019-03-29 10:39 ` [PATCH v6 08/27] checkout: keep most #include sorted Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 09/27] checkout: factor out some code in parse_branchname_arg() Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 10/27] checkout: make "opts" in cmd_checkout() a pointer Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 11/27] checkout: move 'confict_style' and 'dwim_..' to checkout_opts Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 12/27] checkout: split options[] array in three pieces Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 13/27] checkout: split part of it to new command 'switch' Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 14/27] switch: better names for -b and -B Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 15/27] switch: add --discard-changes Nguyễn Thái Ngọc Duy
2019-04-25 10:02 ` Phillip Wood
2019-04-25 10:12 ` Duy Nguyen
2019-04-29 15:14 ` Phillip Wood
2019-03-29 10:39 ` [PATCH v6 16/27] switch: remove -l Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 17/27] switch: stop accepting pathspec Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 18/27] switch: reject "do nothing" case Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 19/27] switch: only allow explicit detached HEAD Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 20/27] switch: add short option for --detach Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 21/27] switch: implicit dwim, use --no-guess to disable it Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 22/27] switch: no worktree status unless real branch switch happens Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 23/27] switch: reject if some operation is in progress Nguyễn Thái Ngọc Duy
2019-03-29 15:47 ` Elijah Newren
2019-04-25 10:33 ` Phillip Wood
2019-04-29 9:16 ` Duy Nguyen
2019-04-29 15:10 ` Phillip Wood
2019-03-29 10:39 ` [PATCH v6 24/27] switch: make --orphan switch to an empty tree Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 25/27] t: add tests for switch Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 26/27] completion: support switch Nguyễn Thái Ngọc Duy
2019-03-29 10:39 ` [PATCH v6 27/27] doc: promote "git switch" Nguyễn Thái Ngọc Duy
2019-03-29 15:58 ` [PATCH v6 00/27] Add new command 'switch' Elijah Newren
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
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190208090401.14793-1-pclouds@gmail.com \
--to=pclouds@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=sunshine@sunshineco.com \
--cc=szeder.dev@gmail.com \
/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.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
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 read-only IMAP folder(s) and NNTP newsgroup(s).