17 Jul 17 09:08, you wrote to me: VS>> Чем отличается "merge file1 file2 file3" от "diff file2 file3 | VS>> patch file1" с точки зрения внутренней кухни? AK> именно тем, что merge знает о существовании file1, в отличие от diff, AK> это 3-way diff.
AK> man diff3 - вот он ничем не отличается, да.
Спасибо. У меня в этой области пробел знаний. Хотя использую системы контроля версий не первый десяток лет, еще с RCS, но для отслеживания истории изменений, а не для collaboration.
VS>> Hу кроме того, что конфликты будут отражены внутри file1 вместо VS>> ".rej". AK> в rej вообще может ничего не попасть, а код работать не будет. AK> Или наоборот - в file1 вообще может уже не быть нужного контекста. AK> merge справится, потому что знает, куда он делся.
А если допустим Вася работает одновременно со мной над файлом, и потом щедро делится своими наработками:
hg diff -r300:400 file1 | mail sudakov
А я тоже этот файлик тем временем менял, и хочу еще и Васины наработки смержить, как мне присланный патч приложить посредством diff3 или merge к моему измененному файлу? Вася ведь не знает про мой файл, он мне только патч между своими версиями прислать может.
ЗЫ предполагается, что у меня и у Васи разные репозитории, или вообще нет репозиториев.