Ответ 1
Вы не можете сразу вернуть весь проект в Xcode, но вы можете сделать это с терминала; просто cd в папку вашего проекта и введите git журнал, чтобы найти хэш, который вы ищете, затем выполните git checkout [hash].
Я работаю над проектом Objective C в Xcode и должен восстановить предыдущую версию, которая была зафиксирована в исходном управлении. Как мне это сделать? Я могу найти информацию о том, как зафиксировать и нажимать, но нет информации о том, как восстановить старую версию.
Вы не можете сразу вернуть весь проект в Xcode, но вы можете сделать это с терминала; просто cd в папку вашего проекта и введите git журнал, чтобы найти хэш, который вы ищете, затем выполните git checkout [hash].
Цитата из документации Apple по адресу https://developer.apple.com/library/ios/documentation/ToolsLanguages/Conceptual/Xcode_Overview/Save_and_Revert_Changes_to_Files/ManageChanges.html
"Сравнение версий файлов для возврата строк кода Выберите "Просмотр" > "Редактор версий" > "Показать сравнение" для сравнения версий файлов, сохраненных в репозитории. Используйте панели перехода для выбора версий файлов на основе их положения в репозитории. Каждая панель перехода управляет выбором для панели содержимого над ней. Чтобы отобразить версию, просмотрите иерархию, чтобы найти ее, затем нажмите, чтобы выбрать ее. Заштрихованные области указывают на изменения между версиями. " "Вы можете использовать временную шкалу версии для выбора версий файлов в соответствии с их хронологическим порядком. Нажмите значок просмотра временной шкалы (../art/TimeLineIcon_2x.png) в центральном столбце, чтобы отобразить временную шкалу между двумя панелями редактирования. Переместите указатель вверх или вниз по временной шкале, чтобы просмотреть доступные версии. Когда вы найдете нужную версию, щелкните левый или правый треугольник индикатора, чтобы отобразить эту версию в соответствующей области редактора. Вы можете отредактировать текущую рабочую копию файла в редакторе версий. Если вы хотите отменить изменения между версиями, вы можете скопировать код из старой версии и вставить его в текущую версию.
В последней строке отображается ключ: copy-and-paste.
здесь представлен визуальный метод в Xcode 8
Если вы хотите получить всю выписку проекта любой совершенной версии в отдельной папке, попробуйте эту оболочку script:
#!/bin/sh
#
# restores an old version of xcodeproject from git repository
# into folder $HOME/gitcopy
# current directory must be the rootdir of the project
# Xcode should not access the same project at this time
#
set -x
PROJECT_ROOT=.
COPY_DEST=$HOME/gitcopy
if [ -e *.xcodeproj ]
then
git log
echo "Which version ?"
read x
git checkout $x
git checkout -b copyVersion
cp -R $PROJECT_ROOT $COPY_DEST
git stash
git checkout master;
else
echo "No xcode project root folder";
fi
В Xcode 9 вы можете проверить любую предыдущую версию.
Вы также можете напрямую создать ветку оттуда, которая может быть даже более полезна в некоторых случаях
Я работаю над проектом Xcode 9.2, который имеет несколько зависимостей и дополнительный файл, который был включен в него. В ходе его очистки я непреднамеренно разрушил проект и не смог понять, что делать, чтобы заставить его работать, пока не найду это решение. Я пошел в исходное управление в верхней строке меню и сначала отменил все изменения. Затем я пошел в диспетчер управления версиями (второй слева справа от Навигатора проектов и выделил комманду, которую я хотел, затем щелкнул правой кнопкой мыши и выбрал опцию Checkout, которая уже ввела номер коммита, который я хотел, и он отлично работал, Шаг 1 - Отменить все изменения Шаг 2 - Выберите "Зафиксировать", к которому вы хотите вернуться. Шаг 3 - Щелкните правой кнопкой мыши и выберите Оформить заказ