Unity: Контроль версий

Я редко пишу скрипты с нуля. Чаще беру старый проект и копирую оттуда какие-то скрипты, при этом добавляя в них что-то новое или удаляя лишнее. Знал, что в Unity есть контроль версий, но никогда этот функционал не использовал, т.к. хватало резервных копий. К тому же GitHub был платным для частного репозитория.
Некоторое время назад было объявлено, что теперь можно бесплатно размещать частные репозитории с участием до трёх соавторов. Подключим GitHub к Unity.

Создадим репозиторий в GitHub

1. Заходим на GitHub и создаём там учётную запись (если она ещё не создана)
2. Логинимся под этой учёткой
3. Нажимаем кнопку Start a project

Если уже есть несколько проектов, то в левой части окна в разделе Репозитории будет кнопка New

 

4. Вписываем название проекта Unity в поле «Repository name»
*. Дополнительно можно указать описание в поле «Description»
5. Отмечаем галочкой опцию «Initialize this repository with a README»
6. Для кнопки Add .gitignore выбираем вариант «Unity» (это позволит исключить все временные файлы проекта):

7. Для завершения нажимаем кнопку Create repository

Установка и настройка GitHub Desktop

8. Скачиваем и устанавливаем GitHub Desktop

GitHubDesktopSetup.exe распаковывает все файлы в папку пользователя:
C:\Users\<USER>\AppData\Local\GitHubDesktop\app-2.5.3\GitHubDesktop.exe
При этом файл GitHubDesktopSetup.msi создаёт папку программы установки для всех пользователей компьютера (это файл для запуска установки, а не самой программы):
C:\Program Files (x86)\GitHub Desktop Installer\GitHubDesktop.exe

 

9. Введём логин и пароль для учётной записи от GitHub:
FileOptionsAccountsSign in:

10. После указания учётных данных можно клонировать репозиторий на локальный компьютер, нажав на кнопочку Clone a repository from the Internet…:

11. На вкладке URL можно ввести адрес репозитория, либо выбрать из доступных из списка на нашем аккаунте (вкладка GitHub.com):

12. Нажав на кнопку Clone, мы получим копию в папку на локальном компьютере:

Создание проекта в Unity

13. Запускаем Unity и создаём новый проект в папке с копией репозитория:

В текущей версии мы не можем создавать проект в НЕПУСТОЙ папке, поэтому пришлось создать проект в папке с таким же именем! Теперь нужно закрыть редактор Unity Unity и переместить все файлы проекта на уровень выше (туда, где файл README.md):

 

*. Пустую папку с названием проекта теперь можно удалить.
14. Заново запускаем Unity, удаляем из списка старый проект, после чего кнопкой ADD добавляем новую папку проекта из локального репозитория Git:

15. После этого открываем выбранный проект в редакторе Unity.
16. Снова возвращаемся в GitHub Desktop, заполняем поле Summary, после чего нажимаем кнопку Commit to master:

17. На текущий момент все изменения в файлах были зафиксированы лишь на локальном компьютере, поэтому далее нам предстоит их отправить на сервер, нажав на кнопку Push origin:

Также можно было нажать на кнопку в подсказке или комбинацию клавиш Ctrl+P

 

18. Если теперь перейти на сайт GitHub, то в нашем репозитории будет присутствовать базовый проект Unity:

19. Затем можно в Unity добавить на сцену куб, потом сохранить сцену, в GitHub Desktop провести синхронизацию, тогда мы увидим, какие были изменения.

Для просмотра изменений на сайте GitHub можно нажать кнопку Commits:

А в приложении все изменения отображаются на вкладке History.