GIT-INIT-DB(1)

NAME
git-init-db - Creates an empty git repository

SYNOPSIS
git-init-db [--template=<template_directory>] [--shared].sp

OPTIONS

--template=<template_directory>
    Provide the directory in from which templates will be used.

--shared
    Specify that the git repository is to be shared amongst several users.

DESCRIPTION
This simply creates an empty git repository - basically a .git directory and .git/object/??/, .git/refs/heads and .git/refs/tags directories, and links .git/HEAD symbolically to .git/refs/heads/master..sp If the $GIT_DIR environment variable is set then it specifies a path to use instead of ./.git for the base of the repository..sp If the object storage directory is specified via the $GIT_OBJECT_DIRECTORY environment variable then the sha1 directories are created underneath - otherwise the default $GIT_DIR/objects directory is used..sp A shared repository allows users belonging to the same group to push into that repository. When specifying --shared the config variable "core.sharedRepository" is set to true so that directories under $GIT_DIR are made group writable (and g+sx, since the git group may be not the primary group of all users)..sp Running git-init-db in an existing repository is safe. It will not overwrite things that are already there. The primary reason for rerunning git-init-db is to pick up newly added templates..sp

EXAMPLES

Start a new git repository for an existing code base

    $ cd /path/to/my/codebase
    $ git-init-db
    $ git-add .
     prepare /path/to/my/codebase/.git directory
     add all existing file to the index

AUTHOR
Written by Linus Torvalds <torvalds@osdl.org>.sp

DOCUMENTATION
Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel.org>..sp

GIT
Part of the git(7) suite.sp