Розгляньте маркери конфлікту. тобто:
<<<<<<< branch
blah blah this
=======
blah blah that
>>>>>>> HEAD
У конкретному випадку, який мотивував мене поставити це запитання, відповідальний член групи щойно завершив злиття від верхнього потоку до нашої гілки, а в деяких випадках залишив це як коментарі, як якусь документацію щодо того, що щойно було вирішено. Він залишив це у складеному стані, проходив тести, тож це не так вже й погано, як ви могли б подумати.
Інстинктивно, хоча я дійсно заперечував проти цього, проте, будучи захисниками чортів для себе, я можу зрозуміти, чому він міг це зробити:
- оскільки це підкреслює іншим розробникам команди те, що змінилося в результаті злиття.
- тому що ті, хто більш досвідчений у конкретних фрагментах коду, можуть потім вирішити проблеми, проілюстровані коментарями, так що йому не доведеться вгадувати.
- тому що злиття вгору за течією є правильним болем, і це може бути важко виправдати час, щоб вирішити все добре і повністю, тому потрібне деяке напівповне повідомлення FIXME, тож чому б не використовувати оригінальний конфлікт як коментар для документування цього.
Моє заперечення було інстинктивним, але я хотів би мати змогу обґрунтувати це раціонально або зрозуміти свою позицію більш розумно. Хто-небудь може надати мені кілька прикладів чи навіть досвіду, коли люди погано проводили час, коли хтось це робив, та / або причини, чому це погана практика (або ви можете грати в захисника диявола і підтримувати це).
Моє власне негайне занепокоєння полягало в тому, що це, очевидно, було би прикро, якби я редагував один із відповідних файлів, витягував зміни, отримував реальні конфлікти, але також тягнув коментовані. Тоді б у мене був справді безладний файл. На щастя, цього не сталося.
// MatrixFrog 10/25/2011: Updated this function to fix bug #1234
. Якщо я бачу подібні речі, я думаю: "Що? Це для чого git blame
!"