diff --git a/builtin/update-microsoft-git.c b/builtin/update-microsoft-git.c index 329f6d77c0d1c9..e2335aa594a4a9 100644 --- a/builtin/update-microsoft-git.c +++ b/builtin/update-microsoft-git.c @@ -2,11 +2,28 @@ #include "repository.h" #include "parse-options.h" #include "run-command.h" +#include "strvec.h" +#if defined(GIT_WINDOWS_NATIVE) +/* + * On Windows, run 'git update-git-for-windows' which + * is installed by the installer, based on the script + * in git-for-windows/build-extra. + */ static int platform_specific_upgrade(void) { + struct child_process cp = CHILD_PROCESS_INIT; + + strvec_push(&cp.args, "git-update-git-for-windows"); + return run_command(&cp); +} +#else +static int platform_specific_upgrade(void) +{ + error(_("update-microsoft-git is not supported on this platform")); return 1; } +#endif static const char builtin_update_microsoft_git_usage[] = N_("git update-microsoft-git");