Как можно перенести фрагменты кода Xcode 4 с одной машины на другую

У меня есть некоторые фрагменты кода пользователя в моем Xcode 4, который я хотел бы скопировать на другую машину и поделиться с другими разработчиками. Есть ли способ сделать это?

Ответ 1

А найди его, они сохранены в:

~/Library/Developer/Xcode/UserData/CodeSnippets/

Каждый из них является файлом plist. В отличие от Xcode 3 теперь есть один файл для каждого фрагмента. Нет никакого вреда в переименовании их в более полезные имена файлов, Xcode не будет возражать. Фактически, вся моя папка CodeSnippets представляет собой репозиторий git, и многие разработчики делятся своими избранными на github. Мои находятся в https://github.com/lichtschlag/Xcode-4-Code-Snippets.

Ответ 2

Как отмечено NSSplendid, они хранятся в ~/Library/Developer/Xcode/UserData/CodeSnippets/.

Вы можете использовать Dropbox для их синхронизации; Я использую этот метод для синхронизации моих привязок ключей и архивов между компьютерами.

Выполните следующие действия:

  • Закройте Xcode.
  • Переместите каталог CodeSnippets в Dropbox. Например, допустим, вы переместили их в ~/Dropbox/CodeSnippets
  • Пусть Dropbox загрузит их.
  • Пауза синхронизации Dropbox.
  • Переместите их обратно туда, где Xcode хранит их.
  • Создайте символическую ссылку в Dropbox: ln -s ~/Library/Developer/Xcode/UserData/CodeSnippets ~/Dropbox/CodeSnippets.
  • Возобновить синхронизацию Dropbox.
  • Перезапустите Xcode.

На другом компьютере:

  • Закройте Xcode.
  • Пусть Dropbox загрузит все, если он еще не появился.
  • Пауза синхронизации Dropbox.
  • Удалите локальные пользовательские данные Xcode: rm -R ~/Library/Developer/Xcode/UserData/CodeSnippets.
  • Переместите ваши UserData из Dropbox в Xcode: mv ~/Dropbox/CodeSnippets ~/Library/Developer/Xcode/UserData/CodeSnippets.
  • Создайте символическую ссылку из UserData для DropBox: ln -s ~/Library/Developer/Xcode/UserData/CodeSnippets ~/Dropbox/CodeSnippets.
  • Возобновить синхронизацию Dropbox.
  • Перезапустите Xcode.

Свертки необходимы, потому что Xcode не будет следовать символической ссылке, но Dropbox будет. Dropbox будет обрабатывать эту символическую ссылку точно так, как если бы на самом деле был каталог.

Это не идеально; вам, вероятно, придется отказаться от Xcode, чтобы распознать новые фрагменты.

Я синхронизирую весь каталог UserData, который получает синхронизированные привязки клавиш, названные вкладки, шрифты и цветовые схемы и фрагменты кода. Для этого переместите и ln ~/Library/Developer/Xcode/UserData.

Ответ 3

Я создал плагин Xcode для синхронизации фрагментов с репозиторием git.

С его помощью вы можете делиться фрагментами на разных компьютерах и даже с командой.

Плагин ACCodeSnippetRepository доступен на Alcatraz и Github.

Ответ 4

Они расположены в ~/Library/Developer/Xcode/UserData/CodeSnippets/

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

Ответ 5

Я не дам вам точного ответа, а скорее руководство: блоки кода, дополнения, шаблоны проектов/файлов (из файла → Создать...) хранятся в отдельных файлах, вероятно, где-то в [~]/Library/Application Support/Developer/Shared или где-то остальное. Поэтому мой последний момент - поиск файлов для фрагментов или их названий, и я уверен, что вы найдете место, где хранятся все пользовательские фрагменты кода.

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