On Tue, Nov 19, 2019 at 03:33:08PM +0100, SZEDER Gábor wrote:
quoted
+ argv_array_pushl(&argv, "config", "--worktree", "core.sparseCheckout", NULL);
+
+ if (mode)
+ argv_array_pushl(&argv, "true", NULL);
+ else
+ argv_array_pushl(&argv, "false", NULL);
+
+ if (run_command_v_opt(argv.argv, RUN_GIT_CMD)) {
+ error(_("failed to enable core.sparseCheckout"));
+ return 1;
+ }
Why the external 'git config' invocation?
git_config_set_in_file_gently(git_path("config.worktree"),
"core.sparseCheckout",
mode ? "true" : "false")
Having slept on it, I think it would be even better to pass NULL
instead of "false". "false", well, just sets the configuration
variable to false, but a NULL would properly unset it.