Каковы должны быть свойства Subversion для *.xml файла?

Что корректные/лучшие свойства должен присвоить *.xml файлам в Подверсии?

Я особенно интересуюсь свойствами svn:mime-type и svn:needs-lock.

Я думаю, что существует два ответа, но я не уверен в который выбрать. Первый должен рассмотреть XML-файлы как текстовые файлы, позволив Подверсии управлять текстовыми слияниями в них. Для этого я использовал бы svn:mime-type=text/xml и не использовал бы svn:needs-lock.

Второе должно было бы рассмотреть XML-файлы как двоичные файлы, предотвратив Подверсию для выполнения автоматических слияний и настояв на поведении блокировки перед редактированием. Для этого я использовал бы svn:mime-type=application/xml и установил бы svn:needs-lock.

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

Будучи консервативным, я рассматриваю XML-файлы как двоичный файл. Но я должен всегда объяснять это разработчикам, которые предпочли бы мочь отредактировать некоторые XML-файлы непосредственно без потребности получить блокировки ранее.

Я хотел бы знать, какие другие думают об этом и если действительно существует опасность относительно сгенерированных XML-файлов инструментов или нет.

РАЗЪЯСНЕНИЕ СООБЩЕНИЯ:

Считав первые три ответа я понял, что вышеупомянутый вопрос не был достаточно ясен.

Мое сомнение - то, для чего должны быть настроены свойства *.xml файлы в [auto-props] раздел конфигурационного файла Подверсии (~/.subversion/config)?

Проблема состоит в том, что может только быть одна конфигурация. Так, я должен быть консервативным и рассматривать все XML-файлы как двоичный файл, или я должен понравиться пользователям, которые редактируют их XML-файлы вручную и рассматривают все XML-файлы как текст по умолчанию?

7
задан Andy Lester 19 July 2019 в 18:26
поделиться

3 ответа

Мы используем как text / xml, так и application / xml в нашем репозитории Subversion. XML, который редактируется вручную, читается человеком и, следовательно, может быть с пользой объединен, мы рассматриваем как текст. Сюда входят такие вещи, как pom-файлы maven и файлы build.xml, файлы docbook, xhtml-документы и т. Д.

svn:eol-style=native
svn:mime-type="text/xml; charset=utf-8"  /* so apache sends the right encoding */

Для XML, который является сложным форматом файла для некоторых инструментов, мы рассматриваем его как двоичный. Примерами этого являются * .fodt (плоский ODT), файлы OmniGraffle, XMI (модели UML) и т.п. Пользователь не может быть разумно направлен на слияние такого файла, и действительно, часто различия даже для тривиальных изменений большие и беспорядочные.

svn:mime-type="application/xml"
svn:needs-lock="*"

Проведение такого различия сослужило нам хорошую службу.

8
ответ дан 6 December 2019 в 23:11
поделиться

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

0
ответ дан 6 December 2019 в 23:11
поделиться

Если XML сгенерирован, вы должны спросить, почему он вообще находится в Subversion. Я с разработчиками в этом вопросе, но очевидное решение, если вы должен управлять версиями сгенерированных файлов, чтобы дать им расширения, отличные от .xml.

3
ответ дан 6 December 2019 в 23:11
поделиться
Другие вопросы по тегам:

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