To show how I am going to approach conversion of shell function to its C implementation by using the subcommand/cmdmode approach, I have first converted check_terms_format() to a subcommand then I have converted write_terms() to a subcommand and then remove the subcommand for check_terms_format() and instead call that function from write_terms(). Also I investigated about the test coverage which I mentioned in my previous version and there is nothing that could be done to improve it. Minor changes wrt v5: * Use the term cmdmode instead of subcommand as pointed out by Junio. (I didn't understand his response in v4 then Christian and Johannes pointed it out to me what he meant). * Move the enum cmdmode (for subcommand) to function scope as suggested by Johannes Schindelin. * A few minor nits by Eric Sunshine. Link for v5: http://thread.gmane.org/gmane.comp.version-control.git/293785 Pranit Bauva (3): bisect--helper: use OPT_CMDMODE instead of OPT_BOOL bisect: rewrite `check_term_format` shell function in C bisect--helper: `write_terms` shell function in C builtin/bisect--helper.c | 97 +++++++++++++++++++++++++++++++++++++++++++++--- git-bisect.sh | 49 ++++-------------------- 2 files changed, 98 insertions(+), 48 deletions(-) -- 2.8.2 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html