Subversion, xcode и проблема с project.pbxproj - PullRequest
0 голосов
/ 20 июля 2010

Мы используем subversion для отслеживания нашего кода, просто разделяя код между нами двумя. Однако мы сталкиваемся с проблемой, когда мы одновременно добавляем или удаляем файл перед следующей фиксацией. Кажется, что всякий раз, когда мы связываемся с группами и файлами, project.pbxproj в пакете проекта будет изменяться, и Subversion не может об этом позаботиться. В результате проект не может быть открыт.

Я предполагаю, что project.pbxproj отслеживает расположение групп и файлов. Как мне сделать эту работу под Subversion? Это текстовый файл, но каким-то образом он не воспринимается как таковой.

Ответы [ 2 ]

1 голос
/ 29 декабря 2011

Во-первых, «Project.pbxproj» - это своего рода файл, который отслеживает обновления вашего пакета XCode, такие как любой новый файл, добавленный, удаленный, перемещенный.

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

Если вы не смогли открыть проект после обновления, это потому, что ваш файл "Project.pbxproj" конфликтовал с предыдущей фиксацией.Поэтому вы должны решить проблему, открыв и отредактировав ее.

Обычно при возникновении конфликта SVN добавляет 3 дополнительных файла.

  1. ваш конфликтующий файл.
  2. вашсобственный файл.(.mine)
  3. последний подтвержденный файл в SVN.
  4. старый версионный файл, поверх которого вы работали.

Вам необходимо сравнить и решить проблемувручную.

Другой лучший способ - сохранить последний принятый файл и удалить конфликтный, свой собственный файл и файл старой версии.Переименуйте последний принятый файл как project.pbxproj

Теперь вы можете открыть проект xcode при удалении конфликтующего файла.

Просто убедитесь, что вы добавляете и удаляете файлы, которые ранее делали между последним коммитом& конфликт, к цели.Теперь последний файл коммита будет содержать ваши изменения в проекте.Вы можете зафиксировать проект сейчас в своем репозитории.

Надеюсь, это имеет смысл.

0 голосов
/ 20 июля 2010

Во-первых, поврежден ли файл .pbxproj или внесенные вами изменения не отражаются в нем правильно?(т. е. если вы удалите файл, но у него нет обновления в файле .pbxproj, он отказывается загружаться?)

Если файл .pbxproj является текстовым, вы можете указать Subversion сохранить его как таковойустановив свойство svn: minme-type .

Установка его для типа текста даст вам лучшее слияние, так что тот, кто фиксирует сначала, сохраняет свои изменения, а затем, когда другой обновляет свою рабочую копиюизменения будут объединены в файл.Вы должны просматривать изменения, когда происходит слияние, хотя Subversion хороша в этом, это всего лишь компьютерный процесс и не будет делать то, что вы ожидали время от времени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...