Насколько хорошо зависимость от пробелов в Python взаимодействует с системой контроля версий в отношении слияния? - PullRequest
1 голос
/ 23 сентября 2008

Мне интересно, не влияет ли необходимость изменения отступа кода для настройки вложенности на объединение изменений в системе, подобной SVN.

Ответы [ 3 ]

2 голосов
/ 23 сентября 2008

Я использовал Python с SVN и Mercurial, и у меня нет проблем слияния.

Все зависит от того, как проводится различие, и я подозреваю, что оно является посимвольным, что заметило бы разницу между одним уровнем отступа и другим.

1 голос
/ 23 сентября 2008

Он работает нормально, если все участники проекта согласились использовать один и тот же стиль пробелов (пробелы или табуляции).

Но я видел случаи, когда разработчик преобразовывал весь файл из пробелов во вкладки (я думаю, что в Eclipse это было функцией, привязанной к Ctrl + Tab!), Что делает почти невозможным определение различий.

1 голос
/ 23 сентября 2008

Обычно системы управления версиями объединяются построчно по умолчанию. Я обнаружил, что слияние кода Python ничем не отличается от слияния любого другого исходного кода с разумным отступом. Если один программист помещает блок кода в оператор if (с отступом всего блока), а другой программист изменяет что-то внутри блока, то возникает конфликт слияния. К счастью, конфликт в этом случае очень легко разрешить.

Если вы используете внешний инструмент слияния, то ваш инструмент может поддерживать более подробные алгоритмы текстового слияния, которые автоматически учитывают вышеуказанный сценарий.

...