
Eu queria ignorar a .vs
pasta inteira porque estava recebendo um erro de bloqueio/permissão negada sqlite3/db.lock
encontrado na .vs
pasta, então criei um .gitignore
arquivo com este comando bash:
touch .gitignore
e adicionei esta linha dentro do arquivo .gitignore:
.vs/*
Mas ainda recebo o mesmo erro quando executo o git add --all
.
No final, abri o aplicativo Sourcetree, ignorei o .vs
conteúdo da pasta clicando com o botão direito nos arquivos e escolhendo ignorar, e então consegui adicionar todos os arquivos, fazer commit e push (através do aplicativo Sourcetree).
Não estou satisfeito com esta solução porque queria fazer tudo através da linha de comando. Agora estou me perguntando por que o conteúdo do gitignore não mudou se eu supostamente o manipulei através do Sourcetree? E como posso adicionar arquivos .gitignore
? O que fiz não pareceu ter nenhum efeito (o fato de ter adicionado line .vs/*
)
Responder1
O que você fez teve um efeito. Ou seja, que tudofuturoas alterações serão ignoradas.
O problema aqui é que quando você adiciona arquivos, .gitignore
eles serão ignorados em quaisquer alterações feitas, mas ainda permanecerão no repositório. O que você precisa fazer é remover tudo do git e adicioná-los novamente. Desta forma, os arquivos que você deseja ignorar não serão adicionados.
Você pode fazer isso com os seguintes comandos:
git rm -r --cached .
git add .
git commit -m ".gitignore fix"
Referência:http://www.codeblocq.com/2016/01/Untrack-files-already-added-to-git-repository-based-on-gitignore/