Различные инструменты Version Control лучше для различных языков?

Я задавался вопросом, там какие-либо пути, которыми определенные языки (C++, Java, Python, Haskell, и т.д.) особенно подходят больше к одному VCS, чем другие? Возможно, из-за синтаксиса или других факторов?

Или должен выбор VCS всегда быть незатронутым такими проблемами?

6
задан Mr. Boy 17 July 2010 в 14:57
поделиться

4 ответа

Содержимое, которое вы помещаете в VCS, может иметь значение для:

  • хранилища: способ хранения дельты может отличаться для простых текстов, документов Microsoft Word, моделей UML (Rational . rose файлов), HTML-страницы, ...
    См., Например, Диспетчер типов ClearCase в качестве примера VCS, управляющего хранилищем на основе содержимого элемента.

  • слияние: слияние может быть выполнено по-разному в зависимости от содержимого версионных файлов с помощью:

    • внутреннего алгоритма (если VCS имеет диспетчер типов)
    • внешних сторонних инструментов слияния, которые могут сделать вывод о некотором "интеллектуальном" слиянии тактика, основанная на расширении и содержании файла.

Что касается вашего вопроса, язык программирования в файлах с версией, насколько мне известно, никогда не является критерием для хранения или слияния: они (файлы) - это просто текст.
Если с ними обращаться по-другому, то это будет только во время процесса слияния, и только если внешний инструмент слияния будет достаточно умен, чтобы выполнить какое-либо «интеллектуальное» слияние на основе содержимого файла.
Но сама VCS обычно не участвует в этом специальном слиянии (для исходных файлов, рассматриваемых как текст).

2
ответ дан 17 December 2019 в 02:21
поделиться

Для VCS не имеет значения, что вы в нее вставляете (у вас может даже не быть кода), а то, как вы это используете. Большинство IDE могут интегрироваться с некоторыми, но не со всеми системами управления версиями. Выбор VCS, с которым ваша IDE может интегрироваться (изначально или с плагинами), обеспечит значительные преимущества.

С учетом сказанного, если выбор стоит между VCS без поддержки IDE или вообще без VCS, всегда ВСЕГДА используйте VCS.

1
ответ дан 17 December 2019 в 02:21
поделиться

Все известные мне VCS не зависят от содержимого, вы можете хранить двоичные или текстовые (ASCII / UTF-8) файлы. Одним из возможных факторов для выбора VCS является поддержка ОС для разработки (пример: git имеет плохую поддержку Windows) и интеграция IDE, которая может зависеть от языка.

Что касается того, не должны ли такие опасения влиять на VCS, я искренне верю в это. В то же время он должен быть достаточно гибким, чтобы позволить другим инструментам делать определенные языковые и проектные вещи (большинство VCS делают это с помощью хуков).

3
ответ дан 17 December 2019 в 02:21
поделиться

То, что имеет тенденцию изменять средний размер исходного файла. Некоторые языки и стили кодирования приводят к созданию файлов с более чем 10000 строками. В этом случае вам абсолютно необходим инструмент ветвления на основе слияния. С меньшими файлами кода гораздо меньше шансов, что кто-то другой внесет несвязанные изменения в тот же файл, и поэтому инструмент / политика, которые работают в основном путем блокировки, только с редкими слияниями, работают хорошо.

0
ответ дан 17 December 2019 в 02:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: