Репозитории¶
Работа с репозиториями¶
Репозиторий — это место хранения кода и внесений изменений. Сделанные пользователем изменения отслеживаются системой контроля версий.
Каждый проект содержит репозиторий.
Создание репозитория¶
Создать репозиторий можно следующими способами:
- Создать проект.
- Сделать ответвление существующего репозитория.
Добавление файлов в репозиторий¶
Файлы могут добавляться в репозиторий при создании проекта или после его создания, например, с использованием веб-среды разработки или командной строки.
Коммит изменений в репозиторий¶
Вы можете закоммитить свои изменения в ветку репозитория. При использовании командной строки вы можете выполнить несколько коммитов, прежде чем они будут выгружены в репозиторий.
- Сообщение коммита: в сообщении, сопровождающем коммит, описываются сделанные изменения и причина этих изменений. В Системе предусмотрены ключевые слова, добавив которые к сообщению, сопровождающему коммит, можно выполнить следующие действия:
- Запустить CI/CD-пайплайн: Если для проекта сконфигурирован CI/CD-пайплайн, он запускается при выгрузке, а не при коммите.
- Пропустить пайплайны: Добавьте слова [ci skip] или [skip ci] к сообщению, сопровождающему коммит, чтобы пропустить запуск CI/CD-пайплайн.
- Перекрестные ссылки с вопросами и запросами на слияние: Добавьте в сообщение номер Вопрос (#xxx), чтобы создать перекрестную ссылку и облегчить отслеживание рабочего процесса. Если упомянуть Вопрос или Запрос на слияние в сообщении, сопровождающем коммит, они будут отображаться в соответствующем обсуждении.
- Выборочно применить коммит: можно выборочно применить коммит через пользовательский интерфейс.
- Отменить коммит путем создания нового: Отменить коммит путем создания нового в выбранной ветке.
- Удостоверить коммит: Усилить безопасность путем заверения коммита.
Клонирование репозитория¶
При клонировании репозитория файлы из удаленного репозитория скачиваются на ваш компьютер и формируется связь.
Для формирования связи необходимо использовать учетные данные. Возможно взаимодействие как по протоколу SSH, так и HTTPS. Рекомендуется делать выборе в пользу SSH.
Клонирование через SSH¶
Клонирование через SSH, когда вы хотите авторизоваться только один раз.
- Авторизуйтесь в системе через SSH.
- Перейдите на страницу проекта и выберите Код. Скопируйте URL для клонирования через SSH.
- Откройте терминал и откройте директорию, в которую вы хотите скопировать файлы. Система автоматически создаст файлы с репозиторием и скачает файлы туда.
-
Выполните команду:
git clone <git@yoursite.ru>:ahcode-tests/sample-project.git
-
Чтобы просмотреть файлы, перейдите в новую директорию:
cd sample-project
Клонирование через HTTPS¶
- Перейдите на страницу проекта и выберите Код. Скопируйте URL для клонирования через HTTPS.
- Откройте терминал и перейдите в директорию, в которую необходимо скачать файлы.
-
Выполните следующую команду. Система автоматически создаст папку с именем репозитория и скачает в файлы в нее.
git clone <https://yoursite.ru/ahcode-tests/sample-project.git>
-
Система запросит имя пользователя и пароль.
- Если для аккаунта включена двухфакторная аутентификация, использовать пароль не получится — можно выбрать один из следующих путей:
- Создайте токен доступа с правами на чтение (read_repository) и запись в репозиторий (write_repository).
- Используйте устройство для двухфакторной аутентификации.
- Чтобы просмотреть файлы, перейдите в новую директорию:
cd sample-project
Клонирование с использованием токена¶
Клонирование через HTTPS следует использовать в следующих случаях:
- Для аккаунта активирована двухфакторная аутентификация.
- При необходимости использовать набор учетных данных для доступа к одному или нескольким репозиториям, который может быть аннулирован.
Для аутентификации при клонировании через HTTPS могут использоваться следующие токены:
- Персональный токен доступа.
- Токен развертывания.
- Проектный токен.
- Групповой токен.
Команда для клонирования репозитория будет иметь следующий вид:
git clone https://<username>:<token>@yoursite.ru/tanuki/osm_project.git
Превращение локальной директории в репозиторий¶
Пользователь может инициализировать репозиторий в локальной директории.
- Откройте терминал и перейдите в директорию, в которой необходимо инициализировать репозиторий.
- Выполните следующую команду: git init.
- В директории будет создана папка .git, которая содержит служебные записи Системы и конфигурационные файлы.
Примечание
Не следует редактировать файлы в этой папке.
Добавление информации об удаленном репозитории¶
Добавление информации об удаленном репозитории необходимо, чтобы указать Системе на наличие его связи с локальной директорией на компьютере пользователя. Добавление этой информации позволяет Системе понять, куда выгружать изменения и откуда их скачивать.
- Создайте проект в системе.
- Скопируйте команду, которая начинается с git remote add.
- На локальном компьютере откройте терминал и перейдите в директорию, в которой инициализирован репозиторий, вставьте следующую команду и нажмите 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> — это обычно имя основной ветки, но также может быть и имя любой другой существующей ветки. При необходимости можно создавать дополнительные удаленные репозитории и ветки.
Скачивание исходного кода из репозитория¶
Можно скачать исходный код, который хранится в репозитории.
- Над списком файлов нажмите иконку скачивания.
- В раскрывшемся меню выберите формат скачиваемого файла (zip, tar, tar.gz или tar.bz2).