Eu tenho um repositório Bitbucket Git gerenciado com Sourcetree.
Tenho duas pastas que desejo confirmar, mas preciso ignorar todos os arquivos dessas pastas, porque elas contêm apenas arquivos temporários.
Como eu posso fazer isso?
Eu tenho um repositório Bitbucket Git gerenciado com Sourcetree.
Tenho duas pastas que desejo confirmar, mas preciso ignorar todos os arquivos dessas pastas, porque elas contêm apenas arquivos temporários.
Como eu posso fazer isso?
Respostas:
Adicione a .gitignore:
*
!.gitignore
.gitginore
é um arquivo normal, basta criá-lo no diretório cujo conteúdo você deseja ignorar.
Para usuários do Sourcetree: Se você deseja ignorar uma pasta específica, basta selecionar um arquivo desta pasta, clicar com o botão direito sobre ele e fazer "Ignorar ...". Você terá um menu pop-up onde poderá ignorar "Ignorar tudo abaixo: <SUA PASTA INDESEJADA>"
Se a opção "Ignorar" estiver acinzentada, você deverá selecionar a opção "Parar rastreamento". Depois disso, o arquivo será adicionado aos arquivos em teste com um sinal de menos no ícone de fundo vermelho e o ícone do arquivo na lista de arquivos não testados mudará para um sinal de pergunta em um fundo violeta. Agora na lista de arquivos não testados , a opção "Ignorar" está habilitada novamente. Faça como descrito acima.
Clique com o botão direito em um arquivo → Ignorar → Ignorar tudo abaixo .
Se a opção Ignorar estiver desabilitada:
Pelo que eu sei, o Git não rastreia pastas, apenas arquivos - portanto, pastas vazias (ou pastas onde todos os arquivos são ignorados) não podem ser confirmadas. Se você, por exemplo, precisar que a pasta esteja presente devido a alguma etapa em seu processo de construção, talvez você possa deixar sua ferramenta de construção criá-la? Ou você pode colocar um arquivo vazio e não ignorado na pasta e confirmá-lo.
Depois de bater minha cabeça nisso por pelo menos uma hora, ofereço esta resposta para tentar expandir os comentários que alguns outros fizeram. Para ignorar uma pasta / diretório, faça o seguinte: se você não tiver um arquivo .gitignore na raiz do seu projeto (esse nome exatamente ".gitignore"), crie um arquivo de texto fictício na pasta que deseja excluir. Dentro da árvore de origem, clique com o botão direito e selecione Ignorar. Você verá um pop-up parecido com este.
Selecione "Tudo embaixo" e selecione a pasta que deseja ignorar na lista suspensa. Isso criará um arquivo .gitignore em seu diretório raiz e colocará a especificação da pasta nele.
Se você já tem uma pasta .gitignore em sua pasta raiz, você pode seguir a mesma abordagem acima ou pode apenas editar o arquivo .gitignore e adicionar a pasta que deseja excluir. É apenas um arquivo de texto. Observe que ele usa barras nos nomes de caminho em vez de barras invertidas, como nós, usuários do Windows, estamos acostumados. Tentei criar um arquivo de texto .gitignore manualmente no Windows Explorer, mas ele não me permitiu criar um arquivo sem um nome (ou seja, apenas com a extensão).
Observe que adicionar o .gitignore e a especificação do arquivo não afetará os arquivos que já estão sendo rastreados. Se você já estiver rastreando esses itens, terá que parar de rastreá-los. (Clique com o botão direito do mouse na pasta ou arquivo e selecione Parar Rastreamento.) Você verá a mudança de um ícone verde / limpo ou âmbar / alterado para um ícone vermelho / removido. Em seu próximo commit, os arquivos serão removidos do repositório e depois disso aparecerão com um ícone azul / ignorado. Outro colaborador perguntou por que Ignorar foi desativado para arquivos específicos e acredito que foi porque ele estava tentando ignorar um arquivo que já estava sendo rastreado. Você só pode ignorar um arquivo que tenha um ícone de ponto de interrogação azul.
Como mencionado por outros: git não rastreia pastas, apenas arquivos.
Você pode garantir que exista uma pasta com estes comandos (ou lógica equivalente):
echo "*" > keepthisfolder/.gitignore
git add --force keepthisfolder/.gitignore
git commit -m "adding git ignore file to keepthisfolder"
A existência do arquivo significa que qualquer pessoa que fizer check-out do repositório terá a pasta.
O conteúdo do arquivo gitignore significará que tudo nele será ignorado
Você não precisa ignorar o próprio arquivo .gitignore . É uma regra que não teria nenhum propósito uma vez cometida.
OU
se preferir manter todas as suas definições de ignorar no mesmo lugar, você pode criar .gitignore na raiz do seu projeto com conteúdos como este:
*.tmp # example, ignore all .tmp files in any folder
path/to/keepthisfolder
path/to/keepthatfolder
e para garantir que as pastas existam
touch path/to/keepthisfolder/anything
git add --force path/to/keepthisfolder/anything
git commit -m "ensure keepthisfolder exists when checked out"
"qualquer coisa" pode ser literalmente qualquer coisa. Os nomes comuns usados são .gitignore, .gitkeep, vazio.
Se a opção Ignorar estiver esmaecida, você deve parar de rastrear o arquivo antes de ignorá-lo. Você pode simplesmente clicar com o botão direito no arquivo e clicar em "Parar rastreamento".
Um ícone azul deve aparecer próximo a ele. Clique com o botão direito novamente e clique em ignorar.
Ignora a pasta completa na árvore de origem.
Just Open Repository >Repository setting > Edit git ignore File and
you can rite some thing like this :
*.pdb
*.bak
*.dll
*.lib
.gitignore
packages/
*/bin/
*/obj/
Para as pastas bin e obj, basta escrever: * / bin / * / obj /
No Sourcetree: Simplesmente ignore um arquivo na pasta especificada. O Sourcetree perguntará se você deseja ignorar todos os arquivos dessa pasta. Está perfeito!
*
meios ignoram todos os arquivos e os!.gitignore
meios não ignoram o próprio arquivo