git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v8 02/10] pull: cleanup autostash check

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
Nov 25, 2020, 03:29 UTC
Message-ID
<20201125032938.786393-3-felipe.contreras@gmail.com>
In-Reply-To
<20201125032938.786393-1-felipe.contreras@gmail.com>
This essentially reverts commit f15e7cf5cc.

Once commit d9f15d37f1 introduced the autostash option for the merge mode, it's not necessary to skip the fast-forward run_merge() when autostash is set.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 builtin/pull.c | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)
diff --git a/builtin/pull.c b/builtin/pull.c
index e2de0d4c91..eaa268c559 100644
--- a/builtin/pull.c
+++ b/builtin/pull.c
@@ -926,7 +926,6 @@ int cmd_pull(int argc, const char **argv, const char *prefix)
 	struct oid_array merge_heads = OID_ARRAY_INIT;
 	struct object_id orig_head, curr_head;
 	struct object_id rebase_fork_point;
-	int autostash;
 
 	if (!getenv("GIT_REFLOG_ACTION"))
 		set_reflog_message(argc, argv);
@@ -959,8 +958,8 @@ int cmd_pull(int argc, const char **argv, const char *prefix)
 	if (get_oid("HEAD", &orig_head))
 		oidclr(&orig_head);
 
-	autostash = config_autostash;
 	if (opt_rebase) {
+		int autostash = config_autostash;
 		if (opt_autostash != -1)
 			autostash = opt_autostash;
 
@@ -1029,13 +1028,11 @@ int cmd_pull(int argc, const char **argv, const char *prefix)
 		     recurse_submodules == RECURSE_SUBMODULES_ON_DEMAND) &&
 		    submodule_touches_in_range(the_repository, &rebase_fork_point, &curr_head))
 			die(_("cannot rebase with locally recorded submodule modifications"));
-		if (!autostash) {
-			if (get_can_ff(&orig_head, &merge_heads.oid[0])) {
-				/* we can fast-forward this without invoking rebase */
-				opt_ff = "--ff-only";
-				ran_ff = 1;
-				ret = run_merge();
-			}
+		if (get_can_ff(&orig_head, &merge_heads.oid[0])) {
+			/* we can fast-forward this without invoking rebase */
+			opt_ff = "--ff-only";
+			ran_ff = 1;
+			ret = run_merge();
 		}
 		if (!ran_ff)
 			ret = run_rebase(&curr_head, merge_heads.oid, &rebase_fork_point);
-- 
2.29.2
Previous: Felipe ContrerasNext: Felipe Contreras
Message 2 of 13 in “Reject non-ff pulls by default”
  1. 00/10 Reject non-ff pulls by defaultFelipe Contreras, Nov 25, 2020
  2. 02/10 pull: cleanup autostash checkFelipe Contreras, Nov 25, 2020
  3. 03/10 pull: trivial cleanupFelipe Contreras, Nov 25, 2020
  4. 05/10 pull: display default warning only when non-ffFelipe Contreras, Nov 25, 2020
  5. 04/10 pull: move default warningFelipe Contreras, Nov 25, 2020
  6. 07/10 rebase: add REBASE_DEFAULTFelipe Contreras, Nov 25, 2020
  7. 06/10 test: pull-options: revert unnecessary changesFelipe Contreras, Nov 25, 2020
  8. 08/10 pull: add pull.modeFelipe Contreras, Nov 25, 2020
  9. Philip OakleyNov 25, 2020
  10. Felipe ContrerasDec 2, 2020
  11. 09/10 pull: add pull.mode=ff-onlyFelipe Contreras, Nov 25, 2020
  12. 01/10 pull: refactor fast-forward checkFelipe Contreras, Nov 25, 2020
  13. 10/10 pull: improve default warningFelipe Contreras, Nov 25, 2020

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.