Git и pbxproj

Символ # в URL-адресе зарезервирован для указания начала идентификатора фрагмента .

Вы должны URL-кодировать содержимое URL-адресов данных, что означает преобразование любых хэш-символов в URL-адрес данных% 23

30
задан DarthNerdus 11 October 2009 в 01:28
поделиться

2 ответа

The pbxproj file isn't really human mergable. While it is plain ASCII text, it's a form of JSON. Essentially you want to treat it as a binary file.

Here's what the individual flags do:

-crlf: don't use crlf <=> cr conversion

-diff: do not diff the file

-merge: do not attempt to merge the file

From the Pro Git book by Scott Chacon

Some files look like text files but for all intents and purposes are to be treated as binary data. For instance, Xcode projects on the Mac contain a file that ends in .pbxproj, which is basically a JSON (plain text javascript data format) dataset written out to disk by the IDE that записывает ваши настройки сборки и так далее. Хотя технически это текстовый файл, потому что это все ASCII, вы не хотите рассматривать это как таковое, потому что это действительно легковесная база данных - вы не может объединить содержимое, если два человека изменил его, и различия обычно не полезно. Файл предназначен для потребляется машиной. По сути, вы want to treat it like a binary file.

27
ответ дан 28 November 2019 в 00:14
поделиться

Во время фиксации часто бывает полезно проверить, что было изменено. Поэтому я считаю полезным сохранить способность различать, но просто не допускать слияния. Поэтому я использую это в моем файле .gitattributes:

*.pbxproj -crlf -merge

С другой стороны, пробовал ли кто-нибудь использовать merge = union для файлов pbxproj? См.: Следует ли мне объединять файлы .pbxproj с git, используя merge = union?

7
ответ дан 28 November 2019 в 00:14
поделиться
Другие вопросы по тегам:

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