Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.47.0 10/06/24
- 2.45.1 → 2.46.2 no changes
- 2.45.0 04/29/24
- 2.44.1 → 2.44.2 no changes
- 2.44.0 02/23/24
- 2.43.1 → 2.43.5 no changes
- 2.43.0 11/20/23
- 2.42.1 → 2.42.3 no changes
- 2.42.0 08/21/23
- 2.38.1 → 2.41.2 no changes
- 2.38.0 10/02/22
- 2.35.1 → 2.37.7 no changes
- 2.35.0 01/24/22
- 2.30.1 → 2.34.8 no changes
- 2.30.0 12/27/20
- 2.29.1 → 2.29.3 no changes
- 2.29.0 10/19/20
- 2.28.1 no changes
- 2.28.0 07/27/20
- 2.27.1 no changes
- 2.27.0 06/01/20
- 2.21.1 → 2.26.3 no changes
- 2.21.0 02/24/19
- 2.13.7 → 2.20.5 no changes
- 2.12.5 09/22/17
- 2.10.5 → 2.11.4 no changes
- 2.9.5 07/30/17
- 2.5.6 → 2.8.6 no changes
- 2.4.12 05/05/17
- 2.3.10 no changes
- 2.2.3 09/04/15
- 2.1.4 no changes
- 2.0.5 12/17/14
RESUMO
git init [-q | --quiet] [--bare] [--template=<diretório-modelo>] [--separate-git-dir <dir-git>] [--object-format=<formato>] [--ref-format=<formato>] [-b <nome-do-ramo> | --initial-branch=<nome-do-ramo>] [--shared[=<permissões>]] [<diretório>]
DESCRIÇÃO
Este comando cria um repositório Git vazio, basicamente um diretório .git
com subdiretórios para os arquivos objects
, refs/heads
, refs/tags
e arquivos modelo. Também é criado um ramo inicial sem qualquer commit (consulte o nome da opção --initial-branch
abaixo).
Caso a variável de ambiente $GIT_DIR
esteja configurada, esta especificará um caminho a ser utilizado para a base dos repositórios em vez de ./.git
.
Caso o diretório de armazenamento de objetos seja especificado através da variável de ambiente $GIT_OBJECT_DIRECTORY
, então os diretórios "sha1" serão criados abaixo; caso contrário, será utilizado o diretório predefinido $GIT_DIR/objects
.
É seguro executar o comando git init
num repositório existente. O comando não substituirá as coisas que já estiverem lá. O principal motivo para executar novamente o comando git init
é pegar os modelos adicionados recentemente (ou mover o repositório para um outro local caso --separate-git-dir
seja utilizado).
OPÇÕES
- -q
- --quiet
-
Exiba apenas mensagens de erro e aviso; suprima todas as outras mensagens.
- --bare
-
Crie um repositório simples. Caso a variável de ambiente
GIT_DIR
não esteja definido, defina diretório de trabalho atual. - --object-format=<formato>
-
Defina o formato do objeto informado (algoritmo hash) para o repositório. Os valores válidos são sha1 e (se ativado) sha256. O valor predefinido é sha1.
Observação: No momento, não há interoperabilidade entre os repositórios SHA-256 e os repositórios SHA-1.
Alertamos no passado que os repositórios SHA-256 podem exigir alterações incompatíveis com versões anteriores quando implementamos estes recursos de interoperabilidade. Hoje, esperamos apenas alterações compatíveis. Além disso, se essas alterações forem necessárias, pode-se esperar que os repositórios SHA-256 criados com o Git atual possam ser usados por versões futuras do Git sem perda de dados.
Warning
|
Missing See original version for this content. |
- --template=<diretório-modelo>
-
Especifique o diretório de onde os modelos serão utilizados. (Consulte a seção "DIRETÓRIO MODELO" abaixo.)
- --separate-git-dir=<dir-git>
-
Em vez de inicializar o repositório como um diretório para
$GIT_DIR
or./.git/
, crie um arquivo de texto contendo o caminho para o repositório real. Este arquivo atua como um link simbólico independente para o repositório do sistema de arquivos Git.Caso seja uma reinicialização, o repositório será movido para um caminho determinado.
- -b <nome-do-ramo>
- --initial-branch=<nome-do-ramo>
-
Use o nome definido para o ramo inicial no repositório que foi recém-criado. Caso não seja especificado, retorne ao nome predefinido (atualmente
master
porém isso está para mudar no futuro; o nome pode ser personalizado através da variável de configuraçãoinit.defaultBranch
. -
Determina que o repositório Git deve ser compartilhado entre vários usuários. Isso permite que os usuários pertencentes ao mesmo grupo enviem para esse repositório. Quando definido, a variável de configuração
core.sharedRepository
é utilizada para que os arquivos e os diretórios definidos pela variável$GIT_DIR
sejam criados com as permissões solicitadas. Quando não definido, o Git usará as permissões informadas pelo umask(2).A opção pode ter os seguintes valores, predefinido como group caso nenhum valor seja informado:
- umask (ou false)
-
Utilize as permissões informadas por umask(2). É a predefinição quando
--shared
não é utilizado. - group (ou true)
-
Torne o grupo do repositório com permissão de escrita (g+sx por exemplo, pois o grupo git pode não ser o grupo principal de todos os usuários). Isso é utilizado para afrouxar as permissões de um valor, a não ser que indique o contrário, umask(2) seguro. Observe que o umask ainda se aplica aos outros bits de permissão (por exemplo, caso o umask seja 0022 o uso de group não removerá os privilégios de leitura dos outros usuários (sem um grupo). Consulte 0xxx para saber como usar exatamente as permissões do repositório.
- all (world ou everybody)
-
O mesmo que group, mas torna o repositório legível por todos os usuários.
- <perm>
-
<perm> é um número octal com 3 dígitos prefixado com
0
e cada arquivo terá o modo <perm>. <perm> substituirá o valorumask(2)
dos usuários (e não apenas diminuirá as permissões como group e all). 0640 criará um repositório de apenas leitura por grupo, sem permissão escrita ou acessível a outros. 0660 criará um repositório com permissão de leitura e escrita ao usuário e ao grupo atual, porém, inacessível aos outros (os diretórios e os arquivos executáveis recebem seu bit x do bit r para as classes correspondentes dos usuários).
É predefinido que a flag da configuração receive.denyNonFastForwards
seja ativado nos repositórios compartilhados para que você não possa impor um impulsionamento fast-forwarding
para ele.
Caso utilize um diretório
, o comando será executado dentro dele. E caso o diretório não exista, um será criado.
DIRETÓRIO MODELO
Os arquivos e diretórios no diretório modelo cujo nome não começa com um ponto serão copiados para o $GIT_DIR
após a sua criação.
O diretório modelo será um dos seguintes (em ordem):
-
o argumento utilizado com a opção
--template
; -
o conteúdo da variável de ambiente
$GIT_TEMPLATE_DIR
; -
a variável de configuração
init.templateDir
; ou -
A predefinição do diretório modelo:
/usr/share/git-core/templates
.
A predefinição do diretório modelo inclui alguma estrutura de diretórios, "padrões de exclusão" sugeridos (consulte gitignore[5]) e os arquivos gancho de amostragem.
Por predefinição os ganchos de amostragem estão todos desativados. Para ativar um dos ganchos de amostragem, renomeie-o removendo o sufixo .sample
.
Para um apanhado geral sobre execução hook consulte githooks[5].
CONFIGURAÇÃO
Warning
|
Missing See original version for this content. |
Warning
|
Missing See original version for this content. |
GIT
Parte do conjunto git[1]