@matheusbsbs / matheus-bagliano / commits / 10ffca7db2
Fork 0

rebase: read state outside loop

The 'onto_name' state used in 'git rebase --merge' is currently read once for each commit that need to be applied. It doesn't change between each iteration, however, so it should be moved out of the loop. This also makes the code more readable. Also remove the unused variable 'end'. Signed-off-by: Martin von Zweigbergk <martin.von.zweigbergk@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Martin von Zweigbergk committed Feb 6, 2011 at 13:43 UTC 10ffca7db2946b4392a38a8f114a0cb3fd6e069c
1 file changed +2 -2
git-rebase.sh
+2 -2
@@ -62,6 +62,7 @@ read_state () {
62 then
63 state_dir="$merge_dir"
64 prev_head=$(cat "$merge_dir"/prev_head) &&
65 + onto_name=$(cat "$merge_dir"/onto_name) &&
66 end=$(cat "$merge_dir"/end) &&
67 msgnum=$(cat "$merge_dir"/msgnum)
68 else
@@ -123,9 +124,8 @@ call_merge () {
124 hd=$(git rev-parse --verify HEAD)
125 cmt_name=$(git symbolic-ref HEAD 2> /dev/null || echo HEAD)
126 msgnum=$(cat "$merge_dir/msgnum")
126 - end=$(cat "$merge_dir/end")
127 eval GITHEAD_$cmt='"${cmt_name##refs/heads/}~$(($end - $msgnum))"'
128 - eval GITHEAD_$hd='$(cat "$merge_dir/onto_name")'
128 + eval GITHEAD_$hd='$onto_name'
129 export GITHEAD_$cmt GITHEAD_$hd
130 if test -n "$GIT_QUIET"
131 then