Servidor Git: ignore alterações de espaços em branco em novos commits

Servidor Git: ignore alterações de espaços em branco em novos commits

Eu encontrei muitas maneiras de lidar com o problema de espaço em branco no Git, mas todas elas exigem algum tipo de ação por parte do usuário: configurar o Git para ignorar as alterações, configurar um gancho de pré-confirmação com aviso ou apenas configurar o editor para removê-los automaticamente. Mas existe uma maneira de simplesmente ignorar as alterações de espaço em branco nolado do servidorou melhor ainda, remover todos os espaços em branco silenciosamente?

Histórico: temos um grande repositório com vários desenvolvedores que não queremos perseguir e convencer a reconfigurar suas ferramentas, mas não queremos ter nenhum espaço em branco no nosso repositório. Para mim, a solução é óbvia: remova todos os espaços em branco uma vez e ignore quaisquer alterações de ws desse ponto em diante. Idealmente, também remova ws em todos os novos commits. Mas como posso fazer isso?

Responder1

Você realmente não pode fazer isso com sanidade. Você não pode modificar o conteúdo de um commit; você só pode criar novos commits. Mesmo se isso fosse possível, quebraria o git: os commits no servidor não estariam relacionados ao histórico armazenado nos repositórios locais dos desenvolvedores e nada funcionaria. Você realmente precisa realizar esse tipo de filtragemantesos arquivos são adicionados ao repositório, e é por isso que você faz isso no lado do cliente em pre-commitganchos, etc.

Uma solução melhor é implementar um mecanismo de aplicação no servidor: rejeitar alterações que não atendam aos seus padrões.

informação relacionada