This command creates an empty Git repository - basically a .git directory with subdirectories for objects, refs/heads, refs/tags, and template files.
An initial branch without any commits will be created
Git doc
Instead of initializing the repository as a directory to either $GIT_DIR or ./.git/, create a text file there containing the path to the actual repository.
This file acts as filesystem-agnostic Git symbolic link to the repository.
–separate-git-dir=
Specify that the Git repository is to be shared amongst several users.
This allows users belonging to the same group to push into that repository.
When specified, the config variable ‘core.sharedRepository’ is set so that files and directories under $GIT_DIR are created with the requested permissions.
When not specified, Git will use permissions reported by umask(2).
–shared[=(false|true|umask|group|all|world|everybody|0xxx)]