Как можно перенести фрагменты кода Xcode 4 с одной машины на другую? - PullRequest
62 голосов
/ 10 марта 2011

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

Ответы [ 5 ]

108 голосов
/ 12 марта 2011

Ах нашел его, они сохраняются в:

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

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

41 голосов
/ 18 июля 2012

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

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

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

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

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

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

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

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

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

4 голосов
/ 05 марта 2014

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

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

Плагин ACCodeSnippetRepository доступен на Алькатрас и Гитхуб .

1 голос
/ 01 марта 2014

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

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

0 голосов
/ 10 марта 2011

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

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

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