User Tools

Site Tools


Sidebar

Me
Здравствуйте!

Меня зовут Михаил Усик!
Я системный администратор
и наполняю эту wiki,
решая разнообразные IT-задачки.

Я всегда готов помочь Вам
наладить IT-инфраструктуру
за скромное вознаграждение!

mike@autosys.tk
+7 (977) 887-96-23

linux_faq:rebrain_devops_course

Git Basic

GIT: 1. Базовая работа с Git репозиториями

Настройка git:

git config --global user.name "mike@autosys.tk"
git config --global user.email "mike@autosys.tk"
git config --global core.editor nano

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

cd ./repo_dir
git init

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

git add ./filename

Создание коммита:

git commit

История коммитов:

git log

Проверка наличия измененных, но не добавленных файлов (untracked):

git status

GIT: 2. Работа с хостингами Git репозиториев

Добавление удаленных серверов в репозиторий:

git remote add rebrain https://mike.obninsk@gitlab.rebrainme.com/mike.obninsk/rebrain-devops-task-checkout.git
git remote add bitbucket https://MikeQ123@bitbucket.org/MikeQ123/rebrain-devops-task-checkout.git
git remote add github https://MikeQ123@github.com/MikeQ123/rebrain-devops-task-checkout.git

Загрузка репозитория на удаленный сервер:

git push github master

Клонирование репозитория с удаленного сервера:

git clone  https://gitlab.rebrainme.com/rebrainme-devops/git-checkout

Переключение на заданный коммит (указав хеш коммита):

git checkout -b new_branch1 e8b3ec06b

Либо на заданный коммит по порядку (третий с конца):

git checkout -b new_branch1 HEAD~2

В результате создается новая ветка (branch) - new_branch1 и репозиторий переключается на нее.
Переключиться на основную ветку (master) можно так:

git checkout master

GIT: 3. Создание тегов для коммитов

Пометить текущий коммит меткой:

git tag v0.1

Просмотреть коммит с заданной меткой:

git show v0.1

Запушить метку на удаленный сервер. Метки автоматичсеки не пушатся. Только вручную!

git push rebrain master v0.1

GIT: 4. Описание репозитория в README.md

GIT: 5. Файл gitignore

.gitignore:

#Ignore files in ./tmp dir
tmp/

Добавляем его в проект

git add -A

Коммитим

git commit

пушим

git push rebrain master

Проверяем

mkdir ./tmp
git add -A
git commit
git push rebrain master

GIT: 6. Создание и базовая работа с ветками

Создаем пару веток develop и feature/new-site

git branch develop
git branch feature/new-site

Переключаемся на ветку develop:

git checkout develop

Изменяем файлик:

nano ./nginx.conf 

Добавляем изменения в staged:

git add -A

Коммитим

git commit 

Переключаемся на ветку feature/new-site

git checkout feature/new-site

Добавляем то что нужно:

mkdir ./conf.d
nano ./conf.d/mysite.domain.com.conf

Добавляем изменения в staged и коммитим:

git add -A
git commit 

Пушим ветки на удаленный сервер:

git push rebrain develop
git push rebrain feature/new-site

GIT: 7. Слияние веток с помощью merge

Переключаемся на ветку master:

git checkout master

Сливаем ветку develop с master:

git merge develop

Пушим на удаленный сервер:

git push rebrain master 

Discussion

Enter your comment. Wiki syntax is allowed:
Q S᠎ P G E
 
linux_faq/rebrain_devops_course.txt · Last modified: 2019/09/30 14:35 by admin