Thread (1 message) 1 message, 1 author, 2016-06-15

Re: [PATCH v2 04/23] rebase -i: hide interactive command messages in verbose mode

From: Thomas Rast <hidden>
Date: 2016-06-15 23:02:15

Fabian Ruch [off-list ref] writes:
Hi Thomas,

Thomas Rast writes:
quoted
Fabian Ruch [off-list ref] writes:
quoted
@@ -923,6 +923,8 @@ EOF
 	;;
 esac
 
+mkdir -p "$state_dir" || die "Could not create temporary $state_dir"
+
 git var GIT_COMMITTER_IDENT >/dev/null ||
 	die "You need to set your committer info first"
 
@@ -938,7 +940,6 @@ then
 fi
 
 orig_head=$(git rev-parse --verify HEAD) || die "No HEAD?"
-mkdir -p "$state_dir" || die "Could not create temporary $state_dir"
 
 : > "$state_dir"/interactive || die "Could not mark as interactive"
 write_basic_state
Why this change?  I can't figure out how it relates to the output
change.
Creating the state directory a few steps earlier into
'git_rebase__interactive' is necessary because the changed definition of
'output' needs it for 'editor.sh'. This change was triggered by a
failing test case that used the <branch> argument with git-rebase. The
'git checkout <branch>', which is executed if 'switch_to' is set to
<branch>, is wrapped into an 'output' line and 'output' failed because
it wasn't able to create 'editor.sh'.
[...]
quoted
In order to temporarily redirect the editor output, the new
definition of `output` creates a script in the state directory to be
used as `GIT_EDITOR`. Make sure the state directory exists before
`output` is called for the first time.
Ah, makes sense.  Thanks for the explanations!

-- 
Thomas Rast
tr@thomasrast.ch
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help