# Подключение к существующему репозиторию Если у вас уже есть приложение, которое вы хотите развернуть в Amvera, но оно уже использует другой репозиторий git (GitHub, Bitbucket или что-то другое), можно привязать дополнительный remote к вашему репозиторию. ```{eval-rst} .. admonition:: Подсказка :class: hint Для ознакомления с принципом работы с git рекомендуем `эту статью `_, которая упротит работу с нашим сервисом. ``` Адрес удаленного репозитория находится на странице "Репозиторий" приложения. ![python_config](../../img/git_main.png) ## Подключение репозитория Откройте командную строку и перейдите в корневую папку проекта вашего приложения. Выполните команду: ```shell git remote add amvera https://git.amvera.ru/<имя-пользователя>/<транслитерированное-имя-проекта> ``` ## Заполнение репозитория Чтобы код можно было собрать и запустить, необходимо наличие [файла конфигурации amvera.yaml](../configuration/config-file.md) и/или [Dockerfile](../configuration/docker.md). Советуем так-же ознакомится с процессом [сборки](../build.md) и [развертывания](../run.md) приложения. ## Развертывание проекта Для инициализации процесса сборки и развертывания приложения достаточно отправить изменения в репозиторий Амвера. ```shell git push amvera master ``` На запрос пользователя и пароля укажите имя пользователя и пароль вашей учетной записи Amvera. ```{eval-rst} .. admonition:: Подсказка :class: hint Запущенные инстансы вашего проекта при ошибке сборки не останавливаются и продолжат работать. ``` ## Пример 1. Вызываем терминал в IDE, где открыто приложение, или открываем папку проекта в терминале. 2. Инициализируем локальный гит репозиторий командой (если он не инициализирован) ```shell git init ``` 3. Добавим удаленный репозиторий нашего проекта (url вашего репозитория будет отличаться. Во избежание синтаксических ошибок скопируйте ссылку на втором шаге создания проекта) ```shell git remote add amvera https://git.amvera.ru/Ваш_Ник/Имя_проекта ``` ```{eval-rst} .. admonition:: Важно :class: warning Если вы задавали конфигурацию в интерфейсе, не забудьте сделать git pull (git pull amvera master) для синхронизации репозиториев. Если вы не хотите синхронизировать репозитории, то создайте yaml по `ссылке `_, добавьте его в корень репозитория перед певым push. При этом не добавляйте/задавайте конфигурацию в интерфейсе. Задание конфигурации и добавление файлов в интерфейсе создает коммит, после которого нужно синхронизировать репозитории при работе через git. ``` 4. Добавим файлы и сделаем первый коммит. ```shell git add . git commit -m "initial commit" ``` 5. Запушим наш код в репозиторий проекта ```shell git push amvera master ``` 6. Когда вы хотите сделать обновление проекта (вы обновили код/конфигурацию/зависимости), выполните команды: ```shell git add . git commit -m "Описание сделанных изменений" git push amvera master ``` ## Возможные ошибки Если основная ветка называется не `master`, а, например, `main`, при выполнении команды `git push amvera master` появится ошибка. Для избежания ошибки достаточно указать, из какой ветки необходимо запушить изменения: ```shell git push amvera имя_основной_ветки:master ``` Так, например, если основная ветка называется `main`, команда будет выглядеть следующим образом: ```shell git push amvera main:master ``` Чтобы узнать, какое название имеет основная ветка (в предположении, что вы на ней находитесь): ```shell git branch --show-current ``` ```{eval-rst} .. admonition:: Примечание :class: hint Другие частые ошибки по работе с Git собраны по :doc:`ссылке ` ``` ### Если вы столкнулись с ошибкой или вам что-то непонятно - Ознакомьтесь с разделом [Частые ошибки](../git/freq-errors.md) при работе с Git