[GSoC][PATCH v2 0/7] rebase -i: rewrite some parts in C
- From
Alban Gruin <alban.gruin@gmail.com>
- Date
- Jul 2, 2018, 10:57 UTC
- Message-ID
- <20180702105717.26386-1-alban.gruin@gmail.com>
This patch series rewrites some parts of interactive rebase from shell to C:
- append_todo_help(). The C version covers a bit more than the shell version.
- The edit-todo functionnality.
- The reflog operations.
The v1 of this series is an aggregate made by Junio of my patch series about append_todo_help() (v3), edit-todo (v2) and reflog (v5), and can be found in the branch `ag/rebase-i-in-c`.
This branch is based on master (as of 2018-07-02).
Changes since v1:
- Introducing rebase-interactive.c to contain functions necessary for interactive rebase.
- Show an error message when append_todo_help() fails to edit the todo list.
- Renaming enumeration check_level and its values to avoid namespace pollution.
- Moving append_todo_help() and edit_todo() from sequencer.c to interactive-rebase.c.
Alban Gruin (7):
sequencer: make two functions and an enum from sequencer.c public
rebase--interactive: rewrite append_todo_help() in C
editor: add a function to launch the sequence editor
rebase-interactive: rewrite the edit-todo functionality in C
sequencer: add a new function to silence a command, except if it
fails.
rebase -i: rewrite setup_reflog_action() in C
rebase -i: rewrite checkout_onto() in CMakefile | 1 + builtin/rebase--helper.c | 24 +++++++- cache.h | 1 + editor.c | 27 ++++++++- git-rebase--interactive.sh | 100 +++---------------------------- rebase-interactive.c | 99 ++++++++++++++++++++++++++++++ rebase-interactive.h | 7 +++ sequencer.c | 120 +++++++++++++++++++++++++------------ sequencer.h | 14 +++++ strbuf.h | 2 + 10 files changed, 260 insertions(+), 135 deletions(-) create mode 100644 rebase-interactive.c create mode 100644 rebase-interactive.h
-- 2.18.0