Перейти к содержанию

Репозитории

Работа с репозиториями

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

Каждый проект содержит репозиторий.

Создание репозитория

Создать репозиторий можно следующими способами:

  • Создать проект.
  • Сделать ответвление существующего репозитория.

Добавление файлов в репозиторий

Файлы могут добавляться в репозиторий при создании проекта или после его создания, например, с использованием веб-среды разработки или командной строки.

Коммит изменений в репозиторий

Вы можете закоммитить свои изменения в ветку репозитория. При использовании командной строки вы можете выполнить несколько коммитов, прежде чем они будут выгружены в репозиторий.

  • Сообщение коммита: в сообщении, сопровождающем коммит, описываются сделанные изменения и причина этих изменений. В Системе предусмотрены ключевые слова, добавив которые к сообщению, сопровождающему коммит, можно выполнить следующие действия:
  • Запустить CI/CD-пайплайн: Если для проекта сконфигурирован CI/CD-пайплайн, он запускается при выгрузке, а не при коммите.
  • Пропустить пайплайны: Добавьте слова [ci skip] или [skip ci] к сообщению, сопровождающему коммит, чтобы пропустить запуск CI/CD-пайплайн.
  • Перекрестные ссылки с вопросами и запросами на слияние: Добавьте в сообщение номер Вопрос (#xxx), чтобы создать перекрестную ссылку и облегчить отслеживание рабочего процесса. Если упомянуть Вопрос или Запрос на слияние в сообщении, сопровождающем коммит, они будут отображаться в соответствующем обсуждении.
  • Выборочно применить коммит: можно выборочно применить коммит через пользовательский интерфейс.
  • Отменить коммит путем создания нового: Отменить коммит путем создания нового в выбранной ветке.
  • Удостоверить коммит: Усилить безопасность путем заверения коммита.

Клонирование репозитория

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

Для формирования связи необходимо использовать учетные данные. Возможно взаимодействие как по протоколу SSH, так и HTTPS. Рекомендуется делать выборе в пользу SSH.

Клонирование через SSH

Клонирование через SSH, когда вы хотите авторизоваться только один раз.

  1. Авторизуйтесь в системе через SSH.
  2. Перейдите на страницу проекта и выберите Код. Скопируйте URL для клонирования через SSH.
  3. Откройте терминал и откройте директорию, в которую вы хотите скопировать файлы. Система автоматически создаст файлы с репозиторием и скачает файлы туда.
  4. Выполните команду:

    git clone <git@yoursite.ru>:ahcode-tests/sample-project.git
    
  5. Чтобы просмотреть файлы, перейдите в новую директорию:

    cd sample-project
    

Клонирование через HTTPS

  1. Перейдите на страницу проекта и выберите Код. Скопируйте URL для клонирования через HTTPS.
  2. Откройте терминал и перейдите в директорию, в которую необходимо скачать файлы.
  3. Выполните следующую команду. Система автоматически создаст папку с именем репозитория и скачает в файлы в нее.

    git clone <https://yoursite.ru/ahcode-tests/sample-project.git>
    
  4. Система запросит имя пользователя и пароль.

  5. Если для аккаунта включена двухфакторная аутентификация, использовать пароль не получится — можно выбрать один из следующих путей:
    1. Создайте токен доступа с правами на чтение (read_repository) и запись в репозиторий (write_repository).
    2. Используйте устройство для двухфакторной аутентификации.
  6. Чтобы просмотреть файлы, перейдите в новую директорию:
    cd sample-project
    

Клонирование с использованием токена

Клонирование через HTTPS следует использовать в следующих случаях:

  • Для аккаунта активирована двухфакторная аутентификация.
  • При необходимости использовать набор учетных данных для доступа к одному или нескольким репозиториям, который может быть аннулирован.

Для аутентификации при клонировании через HTTPS могут использоваться следующие токены:

  • Персональный токен доступа.
  • Токен развертывания.
  • Проектный токен.
  • Групповой токен.

Команда для клонирования репозитория будет иметь следующий вид:

    git clone https://<username>:<token>@yoursite.ru/tanuki/osm_project.git

Превращение локальной директории в репозиторий

Пользователь может инициализировать репозиторий в локальной директории.

  1. Откройте терминал и перейдите в директорию, в которой необходимо инициализировать репозиторий.
  2. Выполните следующую команду: git init.
  3. В директории будет создана папка .git, которая содержит служебные записи Системы и конфигурационные файлы.

Примечание

Не следует редактировать файлы в этой папке.

Добавление информации об удаленном репозитории

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

  1. Создайте проект в системе.
  2. Скопируйте команду, которая начинается с git remote add.
  3. На локальном компьютере откройте терминал и перейдите в директорию, в которой инициализирован репозиторий, вставьте следующую команду и нажмите Enter:
    git remote add origin <git@yoursite.ru>:username/projectpath.git
    

Просмотр информации об удаленном репозитории

Чтобы просмотреть информацию об удаленном репозитории, выполните следующую команду:

git remote -v

Скачивание последних изменений в проекте

Чтобы работать над самой актуальной версией проекта, необходимо скачать (pull) все изменения, сделанные пользователями с момента клонирования или последнего скачивания репозитория.

Замените <name-of-branch> на имя ветки по умолчанию, чтобы скачать основную ветку с кодом, или на название любой другой ветки, в которой ведется работа.

git pull <REMOTE> <name-of-branch>

При клонировании репозитория REMOTE — это обычно origin. Это место, из которого репозиторий был клонирован — SSH или HTTPS URL репозитория, на удаленном сервере. <name-of-branch> — это обычно имя основной ветки, но также может быть и имя любой другой существующей ветки. При необходимости можно создавать дополнительные удаленные репозитории и ветки.

Скачивание исходного кода из репозитория

Можно скачать исходный код, который хранится в репозитории.

  1. Над списком файлов нажмите иконку скачивания.
  2. В раскрывшемся меню выберите формат скачиваемого файла (zip, tar, tar.gz или tar.bz2).