threads / patch / 35493

patchremote: fix status with branch...rebase=preserve

Subject: [PATCH] remote: fix status with branch...rebase=preserve

## tl;dr

3 messages between Dec 7, 2013 and Dec 9, 2013. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Felipe Contreras· Dec 7, 2013, 13:08 UTC · lore

Commit 66713ef (pull: allow pull to preserve merges when rebasing) didn't include an update so 'git remote status' parses branch.<name>.rebase=preserve correctly, let's do that.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 builtin/remote.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
Show changes to builtin/remote.c +7 −2
diff --git a/builtin/remote.c b/builtin/remote.c
index 4e14891..5e4ab66 100644
--- a/builtin/remote.c
+++ b/builtin/remote.c
@@ -309,8 +309,13 @@ static int config_read_branches(const char *key, const char *value, void *cb)
 				space = strchr(value, ' ');
 			}
 			string_list_append(&info->merge, xstrdup(value));
-		} else
-			info->rebase = git_config_bool(orig_key, value);
+		} else {
+			int v = git_config_maybe_bool(orig_key, value);
+			if (v >= 0)
+				info->rebase = v;
+			else if (!strcmp(value, "preserve"))
+				info->rebase = 1;
+		}
 	}
 	return 0;
 }
-- 
1.8.4.2+fc1
Junio C Hamano· Dec 9, 2013, 21:16 UTC · re: Felipe Contreras · lore

Re: [PATCH] remote: fix status with branch...rebase=preserve

Felipe Contreras <felipe.contreras@gmail.com> writes:
Show 26 quoted lines
> Commit 66713ef (pull: allow pull to preserve merges when rebasing)
> didn't include an update so 'git remote status' parses branch.<name>.rebase=preserve
> correctly, let's do that.
>
> Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
> ---
>  builtin/remote.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/builtin/remote.c b/builtin/remote.c
> index 4e14891..5e4ab66 100644
> --- a/builtin/remote.c
> +++ b/builtin/remote.c
> @@ -309,8 +309,13 @@ static int config_read_branches(const char *key, const char *value, void *cb)
>  				space = strchr(value, ' ');
>  			}
>  			string_list_append(&info->merge, xstrdup(value));
> -		} else
> -			info->rebase = git_config_bool(orig_key, value);
> +		} else {
> +			int v = git_config_maybe_bool(orig_key, value);
> +			if (v >= 0)
> +				info->rebase = v;
> +			else if (!strcmp(value, "preserve"))
> +				info->rebase = 1;
> +		}
Looks correct.  Do we want to add a test?
>  	}
>  	return 0;
>  }

← back to recent threads