Combinar com Verificação de Arquivos Ignorados
Nas etapas anteriores, aprendemos como identificar arquivos não rastreados usando git status e git ls-files --others. No entanto, às vezes você tem arquivos que você intencionalmente não quer que o Git rastreie, como arquivos temporários, saídas de compilação ou arquivos de configuração contendo informações confidenciais. O Git permite que você especifique esses arquivos em um arquivo .gitignore.
Nesta etapa, criaremos um arquivo .gitignore e veremos como ele afeta a saída de git status e git ls-files --others.
Primeiro, certifique-se de estar no diretório ~/project/my-time-machine.
Agora, vamos criar um arquivo que queremos ignorar. Vamos chamá-lo de temp.log:
echo "This is a temporary log file" > temp.log
Execute git status novamente:
git status
Você deve ver notes.txt e temp.log listados como arquivos não rastreados:
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: message.txt
Untracked files:
(use "git add <file>..." to include in what will be committed)
notes.txt
temp.log
no changes added to commit (use "git add" and/or "git commit -a")
Agora, vamos criar um arquivo .gitignore e adicionar temp.log a ele. Use o editor nano para criar e editar o arquivo:
nano .gitignore
Dentro do editor nano, digite a seguinte linha:
temp.log
Pressione Ctrl + X, depois Y para salvar e Enter para confirmar o nome do arquivo.
Agora, execute git status mais uma vez:
git status
Desta vez, temp.log não deve mais aparecer na lista "Untracked files:":
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: message.txt
Untracked files:
(use "git add <file>..." to include in what will be committed)
notes.txt
no changes added to commit (use "git add" and/or "git commit -a")
O Git agora sabe para ignorar temp.log. Vamos também ver como git ls-files --others é afetado:
git ls-files --others
A saída agora deve mostrar apenas notes.txt:
notes.txt
Por padrão, git ls-files --others não lista arquivos ignorados. Este é geralmente o comportamento desejado, pois você normalmente não quer ver arquivos que você explicitamente disse ao Git para ignorar.
Se você quiser ver arquivos ignorados junto com outros arquivos não rastreados, você pode usar a opção --ignored com git ls-files --others:
git ls-files --others --ignored
A saída agora incluirá arquivos não rastreados e ignorados:
.gitignore
notes.txt
temp.log
Observe que .gitignore em si é um arquivo não rastreado até que você o adicione e faça o commit.
Compreender como usar .gitignore é crucial para manter seu repositório limpo e focado nos arquivos reais do projeto. Ele impede commits acidentais de arquivos que não deveriam estar no controle de versão.