threads / patch / 35040

patchrebase -i: respect to core.abbrev

Subject: [PATCH] rebase -i: respect to core.abbrev

## tl;dr

4 messages between Sep 28, 2013 and Sep 30, 2013. Diffs are folded; open one to read it.

replies: 3people: 3as markdown or json

Kirill A. Shutemov· Sep 28, 2013, 16:07 UTC · lore

git rebase -i collapses ids on todo list to 7 hexdigits. Let's use core.abbrev config option instead, if it's set.

Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
---
 git-rebase--interactive.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Show changes to git-rebase--interactive.sh +2 −1
diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
index 10bf318d0d..078c28ff1b 100644
--- a/git-rebase--interactive.sh
+++ b/git-rebase--interactive.sh
@@ -713,7 +713,8 @@ expand_todo_ids() {
 }
 
 collapse_todo_ids() {
-	transform_todo_ids --short=7
+	abbrev="$(git config --get 'core.abbrev')"
+	transform_todo_ids --short="${abbrev:-7}"
 }
 
 # Rearrange the todo list that has both "pick sha1 msg" and
-- 
1.8.4.rc3
Kirill A. Shutemov· Sep 28, 2013, 21:10 UTC · re: Kirill A. Shutemov · lore

RE: [PATCH] rebase -i: respect to core.abbrev

Kirill A. Shutemov wrote:
Show 19 quoted lines
> git rebase -i collapses ids on todo list to 7 hexdigits.
> Let's use core.abbrev config option instead, if it's set.
> 
> Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
> ---
>  git-rebase--interactive.sh | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
> index 10bf318d0d..078c28ff1b 100644
> --- a/git-rebase--interactive.sh
> +++ b/git-rebase--interactive.sh
> @@ -713,7 +713,8 @@ expand_todo_ids() {
>  }
>  
>  collapse_todo_ids() {
> -	transform_todo_ids --short=7
> +	abbrev="$(git config --get 'core.abbrev')"
> +	transform_todo_ids --short="${abbrev:-7}"
Simpler version is below.
>From 933a4159f0c037a37f3b251a4f13deea7f17b6c3 Mon Sep 17 00:00:00 2001
From: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
Date: Sat, 28 Sep 2013 18:53:05 +0300
Subject: [PATCH] rebase -i: respect to core.abbrev

collapse_todo_ids() uses `git rev-parse --short=7' to abbrev commit ids. Let's drop argument from --short to use default (7) or config value instead.

Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
---
 git-rebase--interactive.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Show changes to git-rebase--interactive.sh +1 −1
diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
index 10bf318d0d..3c6bed9a28 100644
--- a/git-rebase--interactive.sh
+++ b/git-rebase--interactive.sh
@@ -713,7 +713,7 @@ expand_todo_ids() {
 }
 
 collapse_todo_ids() {
-	transform_todo_ids --short=7
+	transform_todo_ids --short
 }
 
 # Rearrange the todo list that has both "pick sha1 msg" and
-- 
 Kirill A. Shutemov
Eric Sunshine· Sep 29, 2013, 02:49 UTC · re: Kirill A. Shutemov · lore

Re: [PATCH] rebase -i: respect to core.abbrev

On Sat, Sep 28, 2013 at 5:10 PM, Kirill A. Shutemov <kirill.shutemov@linux.intel.com> wrote:

Show 19 quoted lines
> collapse_todo_ids() uses `git rev-parse --short=7' to abbrev commit ids.
> Let's drop argument from --short to use default (7) or config value
> instead.
>
> Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
> ---
>  git-rebase--interactive.sh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
> index 10bf318d0d..3c6bed9a28 100644
> --- a/git-rebase--interactive.sh
> +++ b/git-rebase--interactive.sh
> @@ -713,7 +713,7 @@ expand_todo_ids() {
>  }
>
>  collapse_todo_ids() {
> -       transform_todo_ids --short=7
> +       transform_todo_ids --short
Thanks, I was going to suggest this exact simplification upon reading v1.
Acked-by: Eric Sunshine <sunshine@sunshineco.com>
Show 5 quoted lines
>  }
>
>  # Rearrange the todo list that has both "pick sha1 msg" and
> --
>  Kirill A. Shutemov
Jonathan Nieder· Sep 30, 2013, 21:36 UTC · re: Kirill A. Shutemov · lore

Re: [PATCH] rebase -i: respect to core.abbrev

Kirill A. Shutemov wrote:
> collapse_todo_ids() uses `git rev-parse --short=7' to abbrev commit ids.
> Let's drop argument from --short to use default (7) or config value
> instead.

Since the todo ids are expanded immediately after the editor exits, there is not much risk of accidental hash collision due to new objects, so this should be safe.

Thanks, both.

← back to recent threads