Shourya Shukla <shouryashukla.oo@xxxxxxxxx> writes: > using 'argv_array_pushl()', I thought maybe I could call 'rev-parse.h' > and use the 'cmd_rev_parse()' function directly. Never call cmd_foo() from within your program for any value of foo(), as it is not part of the approved API. cmd_foo() is meant to be the entry point of "run once and exit" function, it is not just allowed but is expected to exit, and it also will do the in-core repository setup etc.