Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
develop:gitlab [2022/09/01 07:29] admin |
develop:gitlab [2023/08/01 04:40] (текущий) admin |
||
---|---|---|---|
Строка 4: | Строка 4: | ||
===== Общее ===== | ===== Общее ===== | ||
- | |||
- | |||
< | < | ||
< | < | ||
Строка 26: | Строка 24: | ||
# Такой вариант тоже должен работать, | # Такой вариант тоже должен работать, | ||
# EXTERNAL_URL=" | # EXTERNAL_URL=" | ||
- | |||
</ | </ | ||
Строка 42: | Строка 39: | ||
< | < | ||
< | < | ||
- | |||
[[https:// | [[https:// | ||
Рассматриваем использование **Apache**\\ | Рассматриваем использование **Apache**\\ | ||
- | |||
В файле **/ | В файле **/ | ||
<code bash> | <code bash> | ||
Строка 51: | Строка 46: | ||
web_server[' | web_server[' | ||
- | |||
gitlab_workhorse[' | gitlab_workhorse[' | ||
gitlab_workhorse[' | gitlab_workhorse[' | ||
Строка 132: | Строка 126: | ||
- | + | **Удаление**\\ | |
- | < | + | т.к. вместе с ним ставится много всякого, |
- | < | + | |
<code bash> | <code bash> | ||
- | </ | ||
- | |||
- | </ | ||
- | |||
- | |||
- | |||
- | |||
- | ===== Работа с Git как таковым ===== | ||
- | |||
- | [[https:// | ||
- | |||
- | ===== Общее ===== | ||
- | **Git** как таковой opensource-софт, | ||
- | |||
- | <code bash> | ||
- | # Установка | ||
- | apt git install | ||
- | |||
- | # Инициализация проекта | ||
- | cd /' | ||
- | |||
- | # Добавление файлов к проекту | ||
- | git add . (file1 file2 ...) | ||
- | # Фиксация изменений (-m коммент, | + | rpm -e gitlab-ce / apt purge gitlab-ce |
- | git commit | + | |
- | # Добавить удаленный репозиторий | + | find / -name gitlab | xargs rm -rf |
- | git remote add origin < | + | |
- | # Отправка на удаленный репозиторий | + | # Просмотр |
- | git push origin master | + | ps aux | grep gitlab |
</ | </ | ||
- | **master** главная ветка по умолчанию, | ||
< | < | ||
- | < | + | < |
+ | В дженкинсе создан спец пользователь | ||
- | <code bash> | + | В проект добавлен пользователь дженкинса, мейнтейнером |
- | # Cостояние | + | вкладка " |
- | git status | + | в интеграциях, включен дженкинс, указан url дженкинса, пользователь, название проекта |
- | # Менеджер веток | + | В проекте генерируем токен доступа, |
- | git branch | + | после этого, в участниках проекта добавляется пользователь, |
+ | В дженкинсе, | ||
+ | выбираем тип " | ||
+ | В джобе выбран " | ||
+ | и выбрана "Use alternative credentials", | ||
- | # Переключение веток и загрузка из в рабочий каталог | ||
- | git checkout < | ||
- | git checkout -b < | ||
- | # Постоянная метка, например для релиза | + | в пайплайне выполняются джобы |
- | git tag | + | эти джобы транслиются на дженкинс джобы |
- | + | в качестве | |
- | # История коммитов | + | |
- | git log <имя ветки> < | + | |
- | git log --oneline --decorate --graph --all | + | |
- | + | ||
- | </ | + | |
- | </ | + | |
- | + | ||
- | Коммит это слепок, | + | |
- | Каждый коммит | + | |
- | **Ветка** это | + | |
- | {{ : | + | |
- | + | ||
- | **HEAD** это указатель на текущую, | + | |
- | | {{ : | + | |
- | + | ||
- | При переходе между | + | |
- | + | ||
- | + | ||
- | + | ||
- | < | + | |
- | < | + | |
<code bash> | <code bash> | ||
Строка 221: | Строка 168: | ||
- | < | ||
- | < | ||
- | **Общее** | ||
- | Есть 4 основных элемента: | ||
- | |||
- | {{: | ||
- | |||
- | * **git add** - добавление файла из рабочего каталога в промежуточную область | ||
- | * **git commit** - из промежуточной области в локальный репозиторий | ||
- | * **git push** - загрузка из локального репозитория в удаленный | ||
- | * **git fetch** - скачивание из удаленного репозитория в локальный | ||
- | * **git merge** - перенос из локального репозитория в рабочий каталог | ||
- | * **git pull** - получение удаленного репозитория сразу в рабочий каталог, | ||
- | |||
- | |||
- | ** Установка ** | ||
- | Нормальный клиент здесь- [[https:// | ||
- | После установки делаем подпись, | ||
- | <code bash> | ||
- | $ git config --global user.name " | ||
- | $ git config --global user.mail " | ||
- | $ git config --global -- list | ||
- | </ | ||
- | |||
- | |||
- | ** Доступ SSH ** | ||
- | Затем настраиваем сертификат, | ||
- | git bash: | ||
- | <code bash> | ||
- | # Генерация ключевой пары (можно: | ||
- | $ ssh-keygen -t ed25519 -C " | ||
- | </ | ||
- | |||
- | Вводим имя файла, парольную фразу можно не вводить, | ||
- | После завершения, | ||
- | закрытый ключ переименовываем в " | ||
- | Содержимое открытого ключа (" | ||
- | |||
- | Так же нужно добавить созданных ключ агенту авторизации | ||
- | <code bash> | ||
- | $ eval " | ||
- | $ ssh-add ~/ | ||
- | </ | ||
- | |||
- | После пишем: **"$ ssh -T git@github.com" | ||
- | |||
- | ** Траблы с тортилой ** | ||
- | |||
- | При установке стоило совершить один неверный шаг и выбрать тортилу как транспорт, | ||
- | |||
- | |||
- | ** Использование ** | ||
- | Репозитории создаются и далее привязаны к конкретным каталогам, | ||
- | |||
- | |||
- | ** Инициализация репозитория ** | ||
- | Переходим в созданный каталог: | ||
- | |||
- | |||
- | ** Добавление файлов ** | ||
- | Добавление в промежуточную область: | ||
- | Точка добавит все, можно указать конкретные, | ||
- | Просмотр состояния: | ||
- | |||
- | |||
- | ** Фиксация изменений ** | ||
- | Фиксация изменений в файлах: | ||
- | Отмена фиксации: | ||
- | |||
- | |||
- | ** Удаленный источник ** | ||
- | Добавление: | ||
- | Список доступных: | ||
- | |||
- | |||
- | ** Дополнительно ** | ||
- | <code bash> | ||
- | # Изменения в файлах: | ||
- | $ git diff | ||
- | |||
- | # История фиксаций: | ||
- | $ git diff- ???? | ||
- | |||
- | # Мержинг если есть конфликты коммитов | ||
- | $ git merge --allow-unrelated-histories | ||
- | </ | ||
- | |||
- | |||
- | </ | ||