From: "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
To: pclouds@gmail.com
Cc: git@vger.kernel.org, gitster@pobox.com, sunshine@sunshineco.com,
szeder.dev@gmail.com
Subject: [PATCH v3 00/21] Add new command "switch"
Date: Fri, 8 Mar 2019 16:57:31 +0700 [thread overview]
Message-ID: <20190308095752.8574-1-pclouds@gmail.com> (raw)
In-Reply-To: <20190208090401.14793-1-pclouds@gmail.com>
v3 contains document and completion updates based on v2's feedback. It
also contains some extra git-checkout.txt updates (blame Eric for this,
he points out problems in git-switch.txt and makes me want to go fix
git-checkout.txt too).
The series is now based on 'master' (yay!)
Nguyễn Thái Ngọc Duy (21):
git-checkout.txt: spell out --no-option
git-checkout.txt: fix one syntax line
doc: document --overwrite-ignore
git-checkout.txt: fix monospace typeset
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 | 119 +++--
Documentation/git-format-patch.txt | 2 +-
Documentation/git-merge-base.txt | 2 +-
Documentation/git-merge.txt | 5 +
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 | 259 ++++++++++
Documentation/gitattributes.txt | 3 +-
Documentation/gitcore-tutorial.txt | 19 +-
Documentation/giteveryday.txt | 24 +-
Documentation/githooks.txt | 8 +-
Documentation/gittutorial.txt | 4 +-
Documentation/gitworkflows.txt | 3 +-
Documentation/revisions.txt | 2 +-
Documentation/user-manual.txt | 56 +--
Makefile | 1 +
advice.c | 11 +-
builtin.h | 1 +
builtin/checkout.c | 471 +++++++++---------
command-list.txt | 1 +
contrib/completion/git-completion.bash | 27 +
git.c | 1 +
parse-options-cb.c | 17 +
parse-options.h | 1 +
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 ++++
39 files changed, 837 insertions(+), 415 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
Range-diff dựa trên v2:
-: ---------- > 1: 949f3dd4fd git-checkout.txt: spell out --no-option
1: 8358b9ca36 = 2: 1ddbbae3e2 git-checkout.txt: fix one syntax line
2: 1686ccbf8d ! 3: b0cb2372db doc: document --overwrite-ignore
@@ -14,14 +14,15 @@
out anyway. In other words, the ref can be held by more than one
worktree.
-+--[no-]overwrite-ignore::
++--overwrite-ignore::
++--no-overwrite-ignore::
+ Silently overwrite ignored files when switching branches. This
-+ is the default behavior. Use --no-overwrite-ignore to abort
++ is the default behavior. Use `--no-overwrite-ignore` to abort
+ the operation when the new branch contains ignored files.
+
- --[no-]recurse-submodules::
+ --recurse-submodules::
+ --no-recurse-submodules::
Using --recurse-submodules will update the content of all initialized
- submodules according to the commit recorded in the superproject. If
diff --git a/Documentation/git-merge.txt b/Documentation/git-merge.txt
--- a/Documentation/git-merge.txt
@@ -30,9 +31,10 @@
Allow the rerere mechanism to update the index with the
result of auto-conflict resolution if possible.
-+--[no-]overwrite-ignore::
++--overwrite-ignore::
++--no-overwrite-ignore::
+ Silently overwrite ignored files from the merge result. This
-+ is the default behavior. Use --no-overwrite-ignore to abort.
++ is the default behavior. Use `--no-overwrite-ignore` to abort.
+
--abort::
Abort the current conflict resolution process, and
-: ---------- > 4: 5b165524d1 git-checkout.txt: fix monospace typeset
3: 1e34862ad8 = 5: a4240a888e t: rename t2014-switch.sh to t2014-checkout-switch.sh
4: aba8f41f73 = 6: dc4a8e8933 checkout: factor out some code in parse_branchname_arg()
5: f165322652 = 7: f0d933c2ac checkout: make "opts" in cmd_checkout() a pointer
6: 75f9a38e85 = 8: 0aa541689c checkout: move 'confict_style' and 'dwim_..' to checkout_opts
7: 9188718493 = 9: 84ca42bb26 checkout: split options[] array in three pieces
8: b5af7d22fd ! 10: e983c8bb2c checkout: split part of it to new command switch
@@ -1,6 +1,6 @@
Author: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
- checkout: split part of it to new command switch
+ checkout: split part of it to new command 'switch'
"git checkout" doing too many things is a source of confusion for many
users (and it even bites old timers sometimes). To remedy that, the
@@ -180,7 +180,7 @@
++
+You can use the `"@{-N}"` syntax to refer to the N-th last
+branch/commit switched to "git switch" or "git checkout"
-+operation. You may also specify `-` which is synonymous to `"@{-1}`.
++operation. You may also specify `-` which is synonymous to `"@{-1}"`.
++
+As a special case, you may use `"A...B"` as a shortcut for the merge
+base of `A` and `B` if there is exactly one merge base. You can leave
@@ -188,8 +188,8 @@
+
+-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
++ Create a new branch named `<new-branch>` starting at
++ `<start-point>` before switching to the branch. This is a
+ convenient shortcut for:
++
+------------
@@ -199,8 +199,8 @@
+
+-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
++ Similar to `--create` except that if `<new-branch>` already
++ exists, it will be reset to `<start-point>`. This is a
+ convenient shortcut for:
++
+------------
@@ -216,8 +216,8 @@
+
+-g::
+--guess::
-+ If <branch> is not found but there does exist a tracking
-+ branch in exactly one remote (call it <remote>) with a
++ If `<branch>` is not found but there does exist a tracking
++ branch in exactly one remote (call it `<remote>`) with a
+ matching name, treat as equivalent to
++
+------------
@@ -243,7 +243,8 @@
+ the switching target. This is used to throw away local
+ changes.
+
-+--[no-]progress::
++--progress::
++--no-progress::
+ Progress status is reported on the standard error stream
+ by default when it is attached to a terminal, unless `--quiet`
+ is specified. This flag enables progress reporting even if not
@@ -292,8 +293,8 @@
+ "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
++ 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::
@@ -302,7 +303,8 @@
+ the ref out anyway. In other words, the ref can be held by
+ more than one worktree.
+
-+--[no-]recurse-submodules::
++--recurse-submodules::
++--no-recurse-submodules::
+ Using --recurse-submodules will update the content of all initialized
+ submodules according to the commit recorded in the superproject. If
+ local modifications in a submodule would be overwritten the checkout
9: 5be400099c ! 11: 5491932cc8 switch: better names for -b and -B
@@ -3,9 +3,9 @@
switch: better names for -b and -B
The shortcut of these options do not make much sense when used with
- switch. And their descriptions are also tied to checkout
- out. Move -b/-B to cmd_checkout() and new -c/-C with the same
- functionality in cmd_switch_branch()
+ switch. And their descriptions are also tied to checkout. Move -b/-B
+ to cmd_checkout() and new -c/-C with the same functionality in
+ cmd_switch_branch()
diff --git a/builtin/checkout.c b/builtin/checkout.c
--- a/builtin/checkout.c
10: 38cfc1fada = 12: e0f1247b09 switch: remove -l
11: 7f0abab72c = 13: f7ff1a7df6 switch: stop accepting pathspec
12: 386ba95007 = 14: 0750d63d38 switch: reject "do nothing" case
13: e488c7d8ca = 15: bcd843146d switch: only allow explicit detached HEAD
14: 9cd5f63c01 = 16: d5cc55525d switch: add short option for --detach
15: fc31b3d4f3 ! 17: 4a27400a58 switch: no implicit dwim, use --guess to dwim
@@ -15,13 +15,13 @@
--- a/Documentation/git-checkout.txt
+++ b/Documentation/git-checkout.txt
@@
- <branch>.
+ `<branch>`.
+
- If <branch> is not found but there does exist a tracking branch in
--exactly one remote (call it <remote>) with a matching name, treat as
+ If `<branch>` is not found but there does exist a tracking branch in
+-exactly one remote (call it `<remote>`) with a matching name, treat as
-equivalent to
-+exactly one remote (call it <remote>) with a matching name and
-+--no-guess is not specified, treat as equivalent to
++exactly one remote (call it `<remote>`) with a matching name and
++`--no-guess` is not specified, treat as equivalent to
+
------------
$ git checkout -b <branch> --track <remote>/<branch>
@@ -36,16 +36,17 @@
-'origin' remote. See also `checkout.defaultRemote` in
-linkgit:git-config[1].
-+
- You could omit <branch>, in which case the command degenerates to
+ You could omit `<branch>`, in which case the command degenerates to
"check out the current branch", which is a glorified no-op with
rather expensive side-effects to show only the tracking information,
@@
Do not set up "upstream" configuration, even if the
branch.autoSetupMerge configuration variable is true.
-+--[no-]guess::
-+ If <branch> is not found but there does exist a tracking
-+ branch in exactly one remote (call it <remote>) with a
++--guess::
++--no-guess::
++ If `<branch>` is not found but there does exist a tracking
++ branch in exactly one remote (call it `<remote>`) with a
+ matching name, treat as equivalent to
++
+------------
@@ -74,9 +75,9 @@
- Do not attempt to create a branch if a remote tracking branch
- of the same name exists.
-
- --[no-]overlay::
+ --overlay::
+ --no-overlay::
In the default overlay mode, `git checkout` never
- removes files from the index or the working tree. When
diff --git a/builtin/checkout.c b/builtin/checkout.c
--- a/builtin/checkout.c
16: 761f953b40 = 18: f7dd33abe6 switch: no worktree status unless real branch switch happens
17: 206f1bda79 = 19: 5b182abea8 t: add tests for switch
18: 3cfb2913eb ! 20: 1575064fe6 completion: support switch
@@ -28,10 +28,11 @@
+ local track_opt= only_local_ref=n
+ if [ -n "$(__git_find_on_cmdline "-g --guess")" ]; then
+ track_opt='--track'
-+ elif [ -z "$(__git_find_on_cmdline "-d --detach")" ]; then
++ fi
++ if [ -z "$(__git_find_on_cmdline "-d --detach")" ]; then
+ only_local_ref=y
+ fi
-+ if [ $only_local_ref = y ]; then
++ if [ $only_local_ref = y -a -n "$track_opt"]; then
+ __gitcomp_direct "$(__git_heads "" "$cur" " ")"
+ else
+ __git_complete_refs $track_opt
19: 2d018878bd ! 21: 8ed01ad0c5 doc: promote "git switch"
@@ -317,9 +317,9 @@
------------
-$ git checkout mybranch
-+$ git switch mybranch
- $ git reset --hard master^2
+-$ git reset --hard master^2
-$ git checkout master
++$ git switch -C mybranch master^2
+$ git switch master
$ git reset --hard master^
------------
@@ -400,7 +400,7 @@
-$ git checkout pu && git reset --hard next <7>
+$ git switch -c hold/linus && git am -3 -i -s ./+hold-linus <5>
+$ git switch topic/one && git rebase master <6>
-+$ git switch pu && git reset --hard next <7>
++$ git switch -C pu next <7>
$ git merge topic/one topic/two && git merge hold/linus <8>
-$ git checkout maint
+$ git switch maint
@@ -430,6 +430,20 @@
Check that the change you made is no longer visible, since it was
+ diff --git a/Documentation/gitworkflows.txt b/Documentation/gitworkflows.txt
+ --- a/Documentation/gitworkflows.txt
+ +++ b/Documentation/gitworkflows.txt
+@@
+ .Rewind and rebuild next
+ [caption="Recipe: "]
+ =====================================
+-* `git checkout next`
+-* `git reset --hard master`
++* `git switch -C next master`
+ * `git merge ai/topic_in_next1`
+ * `git merge ai/topic_in_next2`
+ * ...
+
diff --git a/Documentation/revisions.txt b/Documentation/revisions.txt
--- a/Documentation/revisions.txt
+++ b/Documentation/revisions.txt
--
2.21.0.rc1.337.gdf7f8d0522
next prev parent reply other threads:[~2019-03-08 9:58 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 ` [PATCH v2 " Nguyễn Thái Ngọc Duy
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 ` Nguyễn Thái Ngọc Duy [this message]
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=20190308095752.8574-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).