Skip to content

Commit 5329765

Browse files
committed
Merge branch 'ag/rebase-i-in-c' into pu
Piecemeal rewrite of the remaining "rebase -i" machinery in C. A reroll (which is rumored to be quite good) exists, but hasn't been picked up yet. * ag/rebase-i-in-c: rebase -i: move rebase--helper modes to rebase--interactive rebase -i: remove git-rebase--interactive.sh rebase--interactive2: rewrite the submodes of interactive rebase in C rebase -i: implement the main part of interactive rebase as a builtin rebase -i: rewrite init_basic_state() in C rebase -i: rewrite write_basic_state() in C rebase -i: rewrite the rest of init_revisions_and_shortrevisions() in C rebase -i: implement the logic to initialize $revisions in C rebase -i: remove unused modes and functions rebase -i: rewrite complete_action() in C t3404: todo list with commented-out commands only aborts sequencer: change the way skip_unnecessary_picks() returns its result sequencer: refactor append_todo_help() to write its message to a buffer rebase -i: rewrite checkout_onto() in C rebase -i: rewrite setup_reflog_action() in C sequencer: add a new function to silence a command, except if it fails rebase -i: rewrite the edit-todo functionality in C editor: add a function to launch the sequence editor rebase -i: rewrite append_todo_help() in C sequencer: make two functions and an enum from sequencer.c public
2 parents a8adf07 + 94d4e2f commit 5329765

17 files changed

+729
-446
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,6 @@
120120
/git-rebase
121121
/git-rebase--am
122122
/git-rebase--common
123-
/git-rebase--helper
124123
/git-rebase--interactive
125124
/git-rebase--merge
126125
/git-rebase--preserve-merges

Makefile

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -625,7 +625,6 @@ SCRIPT_LIB += git-mergetool--lib
625625
SCRIPT_LIB += git-parse-remote
626626
SCRIPT_LIB += git-rebase--am
627627
SCRIPT_LIB += git-rebase--common
628-
SCRIPT_LIB += git-rebase--interactive
629628
SCRIPT_LIB += git-rebase--preserve-merges
630629
SCRIPT_LIB += git-rebase--merge
631630
SCRIPT_LIB += git-sh-setup
@@ -943,6 +942,7 @@ LIB_OBJS += quote.o
943942
LIB_OBJS += range-diff.o
944943
LIB_OBJS += reachable.o
945944
LIB_OBJS += read-cache.o
945+
LIB_OBJS += rebase-interactive.o
946946
LIB_OBJS += reflog-walk.o
947947
LIB_OBJS += refs.o
948948
LIB_OBJS += refs/files-backend.o
@@ -1083,7 +1083,7 @@ BUILTIN_OBJS += builtin/push.o
10831083
BUILTIN_OBJS += builtin/range-diff.o
10841084
BUILTIN_OBJS += builtin/read-tree.o
10851085
BUILTIN_OBJS += builtin/rebase.o
1086-
BUILTIN_OBJS += builtin/rebase--helper.o
1086+
BUILTIN_OBJS += builtin/rebase--interactive.o
10871087
BUILTIN_OBJS += builtin/receive-pack.o
10881088
BUILTIN_OBJS += builtin/reflog.o
10891089
BUILTIN_OBJS += builtin/remote.o
@@ -2422,7 +2422,6 @@ XGETTEXT_FLAGS_PERL = $(XGETTEXT_FLAGS) --language=Perl \
24222422
LOCALIZED_C = $(C_OBJ:o=c) $(LIB_H) $(GENERATED_H)
24232423
LOCALIZED_SH = $(SCRIPT_SH)
24242424
LOCALIZED_SH += git-parse-remote.sh
2425-
LOCALIZED_SH += git-rebase--interactive.sh
24262425
LOCALIZED_SH += git-rebase--preserve-merges.sh
24272426
LOCALIZED_SH += git-sh-setup.sh
24282427
LOCALIZED_PERL = $(SCRIPT_PERL)

builtin.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,7 @@ extern int cmd_push(int argc, const char **argv, const char *prefix);
205205
extern int cmd_range_diff(int argc, const char **argv, const char *prefix);
206206
extern int cmd_read_tree(int argc, const char **argv, const char *prefix);
207207
extern int cmd_rebase(int argc, const char **argv, const char *prefix);
208+
extern int cmd_rebase__interactive(int argc, const char **argv, const char *prefix);
208209
extern int cmd_rebase__helper(int argc, const char **argv, const char *prefix);
209210
extern int cmd_receive_pack(int argc, const char **argv, const char *prefix);
210211
extern int cmd_reflog(int argc, const char **argv, const char *prefix);

builtin/rebase--helper.c

Lines changed: 0 additions & 88 deletions
This file was deleted.

0 commit comments

Comments
 (0)