Articles of git

Qual é o resultado de `git push origin`?

Eu trabalhei no meu ramo de resources local, foo. Então eu queria empurrar essa nova ramificação para a origem para que os outros pudessem trabalhar nela. A maneira normal de fazer isso é: git push origin foo:foo O que acabei fazendo, e funcionou completamente como esperado, empurrando para cima 61 objects. Antes de fazer isso, […]

.gitattributes & estratégia de mesclagem individual para um arquivo

Eu tenho um mestre e um ramo de teste do meu aplicativo (web). Esses projetos são quase os mesmos, exceto por um arquivo que configura o aplicativo, digamos “setup”. Sempre que eu mescle uma ramificação na outra, gostaria que essa ramificação mantivesse sua versão da configuração. Ou seja, o git não deve tentar mesclar as […]

git hooks: existe um gancho clone?

Queremos armazenar algumas meta-informações sobre o commit em um database externo. Durante um clone ou um check-out, esse database deve ser referido e copiamos a meta-informação para um arquivo no repository que é clonado. O database é necessário, em vez de usar apenas um arquivo para indexar e pesquisar, etc … Eu pensei que se […]

No Git, como posso recuperar um arquivo preparado que foi revertido antes de confirmar?

Eu estava tentando puxar uma mudança no meu repository usando o Git Tower. Quando fiz isso, houve um conflito e, por engano, acertei todos os estágios (como queria confirmar depois de resolver o conflito). Quando o fiz, o conflito se definiu como resolvido. Eu queria resolver manualmente a mudança, então eu pressionei “Abort Merge”, no […]

como exatamente o trabalho do submódulo git

O arquivo .gitmodule especifica apenas a URL do repository do módulo. Como o git submodule sabe qual versão baixar? Parece estar sempre verificando a versão mais recente. Então, como os desenvolvedores garantem a compatibilidade entre o projeto principal e os submódulos?

Como os padrões negados funcionam no .gitignore?

Eu estou tentando usar um arquivo .gitignore com padrões negados (linhas começando com!), Mas não está funcionando do jeito que eu esperava. Como exemplo mínimo, tenho a seguinte estrutura de diretórios: C:/gittest — .gitignore — aaa/ — bbb/ — file.txt — ccc/ — otherfile.txt e no meu arquivo gitignore, eu tenho isto: aaa/ !aaa/ccc/ Meu […]

Existe uma maneira de bloquear uma filial no GIT

Eu tenho uma idéia de bloquear um repository de usuários empurrando arquivos para ele tendo um script de bloqueio no gancho de atualização do GIT, já que o push só pode reconhecer o ID do usuário como argumentos e não as ramificações. Então eu posso bloquear todo o repository que está apenas bloqueando um diretório. […]

Como posso alterar os comentários padrão na mensagem de confirmação do git?

É possível modificar a parte comentada da mensagem padrão de confirmação do git? Eu quero adicionar um pouco mais de informações de ‘contexto’ para meus usuários. # Please enter the commit message for your changes. # (Comment lines starting with ‘#’ will not be included) # Explicit paths specified without -i nor -o; assuming –only […]

Como posso evitar que o git pense que fiz uma renomeação

Eu tenho dois arquivos index.html e template.html . Mudei a maior parte do index.html para o template.html e agora o git pensa que eu fiz uma renomeação quando adicionei os dois arquivos. É possível evitar isso em casos específicos?

gitignore todos os arquivos de extensão no diretório

Existe uma maneira de ignorar todos os arquivos de um tipo em um diretório? ** é aparentemente sem sentido para git, então isso não funciona: /public/static/**/*.js A ideia é combinar pastas aninhadas arbitrárias.