Lidar com Diretórios que Não São Repositórios
Nas etapas anteriores, aprendemos que o Git identifica um repositório pela presença do diretório oculto .git. Também vimos que executar git status em um diretório sem esta pasta .git resulta em um erro "fatal: not a git repository".
Este comportamento é consistente em quase todos os comandos Git. Se você tentar executar um comando que opera em um repositório (como git add, git commit, git log, etc.) em um diretório que não é um repositório Git, o Git normalmente fornecerá uma mensagem de erro indicando que não consegue encontrar o repositório.
Vamos tentar outro comando Git, git log, em nosso diretório atual (~/project), que não é um repositório:
git log
Você verá o mesmo tipo de mensagem de erro:
fatal: not a git repository (or any of the parent directories): .git
Isso reforça o conceito de que a maioria dos comandos Git exige que você esteja dentro de um repositório Git (ou um subdiretório de um) para funcionar corretamente. O Git precisa das informações armazenadas no diretório .git para realizar operações como visualizar o histórico, rastrear alterações ou criar commits.
A principal exceção a esta regra é o comando git init, que é especificamente projetado para criar um novo diretório .git e inicializar um repositório no diretório atual.
Entender como o Git se comporta em diretórios que não são repositórios é crucial para a solução de problemas. Se você encontrar um erro "fatal: not a git repository", a primeira coisa a verificar é se você está no diretório correto e se esse diretório foi inicializado como um repositório Git.
No próximo laboratório, você aprenderá como inicializar um repositório Git e começar a rastrear seus próprios projetos!