зеркало из https://github.com/microsoft/git.git
rebase -i: recognize short commands without arguments
The sequencer instruction 'b', short for 'break', is rejected: error: invalid line 2: b The reason is that the parser expects all short commands to have an argument. Permit short commands without arguments. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
71f82465b1
Коммит
3a4a4cab3e
|
@ -1954,7 +1954,8 @@ static int parse_insn_line(struct todo_item *item, const char *bol, char *eol)
|
|||
if (skip_prefix(bol, todo_command_info[i].str, &bol)) {
|
||||
item->command = i;
|
||||
break;
|
||||
} else if (bol[1] == ' ' && *bol == todo_command_info[i].c) {
|
||||
} else if ((bol + 1 == eol || bol[1] == ' ') &&
|
||||
*bol == todo_command_info[i].c) {
|
||||
bol++;
|
||||
item->command = i;
|
||||
break;
|
||||
|
|
|
@ -49,7 +49,7 @@ set_fake_editor () {
|
|||
case $line in
|
||||
squash|fixup|edit|reword|drop)
|
||||
action="$line";;
|
||||
exec*|break)
|
||||
exec*|break|b)
|
||||
echo "$line" | sed 's/_/ /g' >> "$1";;
|
||||
"#")
|
||||
echo '# comment' >> "$1";;
|
||||
|
|
|
@ -243,7 +243,9 @@ unset GIT_SEQUENCE_EDITOR
|
|||
|
||||
test_expect_success 'the todo command "break" works' '
|
||||
rm -f execed &&
|
||||
FAKE_LINES="break exec_>execed" git rebase -i HEAD &&
|
||||
FAKE_LINES="break b exec_>execed" git rebase -i HEAD &&
|
||||
test_path_is_missing execed &&
|
||||
git rebase --continue &&
|
||||
test_path_is_missing execed &&
|
||||
git rebase --continue &&
|
||||
test_path_is_file execed
|
||||
|
|
Загрузка…
Ссылка в новой задаче