Re: Git internal command line parser
- From
Lemuria <nekadek457@gmail.com>
- Date
- Dec 24, 2021, 19:05 UTC
- Message-ID
- <902f8da8-970f-0a5f-a88e-d75754b71440@gmail.com>
- In-Reply-To
- <cc6fa52a-d782-d4a8-eb93-936b8d83fc2f@iee.email>
On 25/12/2021 2:36 am, Philip Oakley wrote:
Show 26 quoted lines
> On 24/12/2021 18:30, Lemuria wrote: >> >> >> On 25/12/2021 2:13 am, Philip Oakley wrote: >>> On 24/12/2021 14:38, Lemuria wrote: >>>> #=< TLDR: Where's the code for git's internal command line parser? >>>>> ===# >>>> >>>> I'm interested in the internals of git, more specifically it's command >>>> line parser. >>> >>> One place to start is https://github.com/git/git/blob/master/git.c >>> >> >> Wait, is all of Git just one big executable or are there many >> executables and `git` is just the front-end for accessing the >> separate git executables, such as say, the one for processing >> commits? >> > > Yes, `git` is a front end. > > If you are on Windows, it gets even more interesting because all the > individual sub-commands are just hard links back to the single git.exe > that then links to those sub-command's code. >
I'm on Ubuntu 20.04, just in case you ever want to know.
And I likely will consider this "front-end to many separate executable apps" approach for my future large projects.
Thanks for your help! I've also cloned the git repository of git, and I'll take a look through the source code.
I'm also a beginner to C, not quite an expert at it.
Show 13 quoted lines
>>>> >>>> Does Git use a library like getopt for it's command line handling, or >>>> does it use a custom parser? >>>> >>>> If possible, I would appreciate being redirected to the source code >>>> files that handle this. >>>> >>>> Sincerely, >>>> Lemuria >>> >>> Philip >>> >