Gostaria de impedir que o Git mostrasse arquivos ignorados git status
, porque ter toneladas de documentação e arquivos de configuração na lista de arquivos alterados, mas não atualizados , torna a lista meio inútil.
É normal que o Git mostre esses arquivos?
Coloquei as informações de ignorar em um .gitignore
arquivo no diretório raiz do repositório Git e elas não são adicionadas ao usá- git add .
las, mas parece que elas também não são totalmente ignoradas, pois são exibidas na lista mencionada acima e não são exibidas na lista impresso por git ls-files --others -i --exclude-standard
. Somente os arquivos correspondentes aos padrões são ~/.gitignore
exibidos lá.
Poderia ser porque, em um estágio anterior, eu não os ignorei e eles foram comprometidos pelo menos uma vez?
git status -- <file>
Mostra "Alterações não preparadas para confirmação" ou "Arquivos não rastreados" para o seu arquivo? O primeiro é se você já possui um arquivo no índice e eu precisaria de mais informações para resolver seu problema (crie uma pergunta separada com as mensagens git mostradas e apenas poste o link no comentário). O posterior é para arquivos que ainda não são rastreados pelo git, mas não estão no.gitignore
arquivo e podem ser adicionados livremente ao índice.Também tive esse problema, provavelmente porque você adicionou seu diretório / arquivos ignorados ao .gitignore depois que eles foram marcados como "a serem rastreados" pelo GIT em um fluxo de confirmação inicial.
Então, você precisa limpar o cache de rastreamento do git da seguinte maneira:
git rm --cached -r [folder/file name]
Uma explicação mais detalhada pode ser lida aqui: http://www.frontendjunkie.com/2014/12/stop-git-from-tracking-changes-to.html
O comando acima também removeu os restos da pasta / arquivos da sua origem remota do GIT. Portanto, seus repositórios GIT ficam limpos.
fonte
O problema pode ser que esse arquivo ainda está no cache do git. Para resolver esse problema, é necessário redefinir o cache do git.
Redefina o cache do git. Isso remove tudo do índice.
Adicione todos os arquivos novamente:
Confirmar:
fonte
Isso certamente funciona,
git rm --cached -r [folder/file name]
fonte
Suponho que você não queira adicionar o diretório tmp (Visual Studio Platform)
1- adicione linhas abaixo ao seu arquivo .gitignore local
3- faça backup e exclua a pasta tmp localmente. (Faça backup em outro lugar. Por exemplo, desktop?)
4- Confirme as alterações em Local do que Sincronizar em Remoto (por exemplo, github).
Após essas etapas, seu diretório tmp não será carregado novamente.
fonte
Do man git-lsfiles :
Pessoalmente, tenho a tendência de manter arquivos doxygen na minha árvore de origem, então simplesmente o adicionei ao meu .gitignore (que está no diretório mais alto da minha árvore de origem):
Espero que ajude.
fonte
As etapas a seguir funcionam apenas para arquivos não rastreados . Esta informação é aplicável à seguinte configuração:
Coloque a lista de arquivos a serem ignorados no arquivo "excluir" presente no seguinte local.
Conteúdo inicial do arquivo "excluir"
Conteúdo final do arquivo "excluir"
fonte
De acordo com a resposta aceita, você pode assumir o arquivo inalterado , para que o que você faz na sua máquina local não seja confirmado na sua filial remota.
Algo como
git update-index --assume-unchanged src/main/resources/config.properties
onde src / main.resources / config.properties é uma amostra do caminho para localizar esse arquivo no seu projeto.Agora, se você deseja remover o arquivo completamente do seu repositório, poderá usar
remove cached
como `git rm --cachedEste cenário pode ser aplicável na seguinte situação:
fonte
como isso
E mostrará o status apenas para minha pasta
fonte