Considere marcadores de conflito. ou seja:
<<<<<<< branch
blah blah this
=======
blah blah that
>>>>>>> HEAD
No caso específico que me motivou a postar essa pergunta, o membro da equipe responsável havia acabado de concluir uma mesclagem do montante para a nossa filial e, em alguns casos, os deixou como comentários, como uma espécie de documentação sobre o que acabara de ser apresentado. resolvido. Ele deixou em estado compilado, os testes foram aprovados, para que não seja tão ruim quanto você imagina.
Instintivamente, porém, eu realmente me opus a isso, por mais que os demônios se defendam, posso ver por que ele pode ter feito isso:
- porque destaca para outros desenvolvedores da equipe o que mudou como resultado da mesclagem.
- porque aqueles que são mais especialistas em partes específicas do código podem resolver as preocupações ilustradas pelos comentários, para que ele não precise adivinhar.
- porque a mesclagem upstream é uma dor certa e pode ser difícil justificar o tempo para resolver tudo bem e completamente, por isso é necessário algum aviso FIXME semi-completo, por que não usar o conflito original como um comentário para documentar isso.
Minha objeção foi instintiva, mas eu gostaria de justificá-la racionalmente ou ver minha posição com mais sabedoria. Alguém pode me dar alguns exemplos ou mesmo experiências em que as pessoas tiveram um mau momento com alguém fazendo isso e / ou razões pelas quais é uma má prática (ou você pode bancar o advogado do diabo e apoiá-lo).
Minha preocupação imediata foi que seria claramente irritante se eu estivesse editando um dos arquivos em questão, puxasse as alterações, tivesse conflitos reais, mas também os comentados. Então eu teria realmente um arquivo muito confuso. Felizmente isso não aconteceu.
// MatrixFrog 10/25/2011: Updated this function to fix bug #1234
. Se eu vejo coisas assim, penso: "O quê? É git blame
para isso!"