Eai pessoal, alguém pode me explicar como funciona o arquivo .gitignore? Eu só sei bem por cima mesmo.
Agradeço desde já.
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Eai pessoal, alguém pode me explicar como funciona o arquivo .gitignore? Eu só sei bem por cima mesmo.
Agradeço desde já.
Oi Rafael, ele é simplesmente uma lista que mostra os arquivos que o git deve ignorar no tracking, entende? O git lê esse arquivo, identifica os nomes dos arquivos que devem ser ignorados e não faz acompanhamento desses arquivos.
Você pode ignorar arquivos de várias formas. Até mesmo usando caracteres curingas como o * (asterisco).
Lembrando que o arquivo estará em tracking também a não ser que você também o ignore listando o nome do próprio arquivo dentro dele. Entende?
Você tem alguma dúvida mais específica em relação a isso?
Saquei, mas mesmo se eu quiser que não grave as alterações de um arquivo ou diretório eu ainda posso subir-los pro GitHub certo?
Não Rafael, o git só vai enviar o que ele ver que não deve ser ignorado no repositório. A ideia de ignorar um arquivo é realmente fingir que ele não existe.
Talvez você consiga forçar algo, não tenho certeza, mas ignorar um arquivo e mesmo assim querer enviar ele para o github, não faz muito sentido pra mim.
Consegue me dar um exemplo de onde poderíamos querer fazer algo assim?
Tem uma ferramenta chamada Jekyll que permite você fazer sites estáticos e no final tornam-se dinâmicos, muito interessante a ferramenta. Quando vc vai desenvolver nela, você quebra o código os separa em diretórios como de "includes", "layout" e etc. E ai quando for rodar no browser você faz um build e ele gera um diretório chamado "site" e é ai que vai ter cada parte junta pra poder rodar. Ai eu penso " o mesmo código só que junto" acho que seria interessante ele aparecer no repositório mas ai toda vez que você mexer numa pasta que não seja o "site" ou seja o build final, ele vai acusar a mesma alteração em dois lugares diferentes. Ai no caso, o que eu faria, era por no README.md que é necessário fazer o processo de build e que essa pasta vai ser gerada e adicionaria a pasta ao .gitignore (o que é recomendado pelo Jekyll). Faz sentido, né? Kkkk
Faz sentido sim! :)