Skip to content

Commit b8d0691

Browse files
derrickstoleedscho
authored andcommitted
update-microsoft-git: create barebones builtin
Just do the boilerplate stuff of making a new builtin, including documentation and integration with git.c. Signed-off-by: Derrick Stolee <[email protected]>
1 parent b379436 commit b8d0691

File tree

6 files changed

+48
-0
lines changed

6 files changed

+48
-0
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,7 @@
171171
/git-unpack-file
172172
/git-unpack-objects
173173
/git-update-index
174+
/git-update-microsoft-git
174175
/git-update-ref
175176
/git-update-server-info
176177
/git-upload-archive
+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
git-update-microsoft-git(1)
2+
===========================
3+
4+
NAME
5+
----
6+
git-update-microsoft-git - Update the installed version of Git
7+
8+
9+
SYNOPSIS
10+
--------
11+
[verse]
12+
'git update-microsoft-git'
13+
14+
DESCRIPTION
15+
-----------
16+
This version of Git is based on the Microsoft fork of Git, which
17+
has custom capabilities focused on supporting monorepos. This
18+
command checks for the latest release of that fork and installs
19+
it on your machine.
20+
21+
22+
GIT
23+
---
24+
Part of the linkgit:git[1] suite

Makefile

+1
Original file line numberDiff line numberDiff line change
@@ -1333,6 +1333,7 @@ BUILTIN_OBJS += builtin/tag.o
13331333
BUILTIN_OBJS += builtin/unpack-file.o
13341334
BUILTIN_OBJS += builtin/unpack-objects.o
13351335
BUILTIN_OBJS += builtin/update-index.o
1336+
BUILTIN_OBJS += builtin/update-microsoft-git.o
13361337
BUILTIN_OBJS += builtin/update-ref.o
13371338
BUILTIN_OBJS += builtin/update-server-info.o
13381339
BUILTIN_OBJS += builtin/upload-archive.o

builtin.h

+1
Original file line numberDiff line numberDiff line change
@@ -235,6 +235,7 @@ int cmd_tag(int argc, const char **argv, const char *prefix);
235235
int cmd_unpack_file(int argc, const char **argv, const char *prefix);
236236
int cmd_unpack_objects(int argc, const char **argv, const char *prefix);
237237
int cmd_update_index(int argc, const char **argv, const char *prefix);
238+
int cmd_update_microsoft_git(int argc, const char **argv, const char *prefix);
238239
int cmd_update_ref(int argc, const char **argv, const char *prefix);
239240
int cmd_update_server_info(int argc, const char **argv, const char *prefix);
240241
int cmd_upload_archive(int argc, const char **argv, const char *prefix);

builtin/update-microsoft-git.c

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#include "builtin.h"
2+
#include "repository.h"
3+
#include "parse-options.h"
4+
#include "run-command.h"
5+
6+
static int platform_specific_upgrade(void)
7+
{
8+
return 1;
9+
}
10+
11+
static const char builtin_update_microsoft_git_usage[] =
12+
N_("git update-microsoft-git");
13+
14+
int cmd_update_microsoft_git(int argc, const char **argv, const char *prefix)
15+
{
16+
if (argc == 2 && !strcmp(argv[1], "-h"))
17+
usage(builtin_update_microsoft_git_usage);
18+
19+
return platform_specific_upgrade();
20+
}

git.c

+1
Original file line numberDiff line numberDiff line change
@@ -694,6 +694,7 @@ static struct cmd_struct commands[] = {
694694
{ "unpack-file", cmd_unpack_file, RUN_SETUP | NO_PARSEOPT },
695695
{ "unpack-objects", cmd_unpack_objects, RUN_SETUP | NO_PARSEOPT },
696696
{ "update-index", cmd_update_index, RUN_SETUP },
697+
{ "update-microsoft-git", cmd_update_microsoft_git },
697698
{ "update-ref", cmd_update_ref, RUN_SETUP },
698699
{ "update-server-info", cmd_update_server_info, RUN_SETUP },
699700
{ "upload-archive", cmd_upload_archive, NO_PARSEOPT },

0 commit comments

Comments
 (0)