git
Розбіжності
Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
| Порівняння попередніх версійПопередня ревізіяНаступна ревізія | Попередня ревізія | ||
| git [2014/08/22 21:32] – [Слияние веток] wombat | git [2017/06/12 19:52] (поточний) – gource wombat | ||
|---|---|---|---|
| Рядок 1: | Рядок 1: | ||
| ====== GIT ====== | ====== GIT ====== | ||
| + | |||
| + | В простейшем виде порядок работы с GIT-репозиторием примерно такой: | ||
| + | |||
| + | - Создание нового локального репозитория или клонирование уже существующего репозитория. | ||
| + | - Выбор рабочей ветки, если их несколько. | ||
| + | - Внесение изменений в проект и их запись. | ||
| + | - Обновление удалённого репозитория из локального рабочего каталога. | ||
| ===== Создание репозитория ===== | ===== Создание репозитория ===== | ||
| Рядок 5: | Рядок 12: | ||
| Создаём папку, которая станет репозиторием: | Создаём папку, которая станет репозиторием: | ||
| | | ||
| - | mkdir uTox | + | mkdir MyProject |
| - | cd uTox | + | cd MyProject |
| Затем инициализируем её при помощи git. При этом создаётся вложенная подпапка '' | Затем инициализируем её при помощи git. При этом создаётся вложенная подпапка '' | ||
| Рядок 16: | Рядок 23: | ||
| git config user.email " | git config user.email " | ||
| git config user.name " | git config user.name " | ||
| + | | ||
| + | |||
| ===== Клонирование репозитория ===== | ===== Клонирование репозитория ===== | ||
| - | git clone https:// | + | git clone https:// |
| + | |||
| + | git clone ssh://< | ||
| + | | ||
| Рядок 24: | Рядок 36: | ||
| git checkout < | git checkout < | ||
| + | | ||
| + | |||
| + | ===== Обновление с удалённого репозитория ===== | ||
| + | |||
| + | git checkout < | ||
| + | git pull | ||
| + | |||
| + | ===== Создание ветки ===== | ||
| + | |||
| + | git checkout -b < | ||
| + | |||
| + | ((http:// | ||
| + | |||
| + | |||
| ===== Слияние веток ===== | ===== Слияние веток ===== | ||
| - | git merge --no-ff | + | git merge < |
| Если получаем ошибку вида | Если получаем ошибку вида | ||
| - | '' | + | |
| - | error: you need to resolve your current index first'' | + | error: you need to resolve your current index first |
| при каком-то действии, | при каком-то действии, | ||
| git merge --abort | git merge --abort | ||
| + | | ||
| + | | ||
| ===== Разрешение конфликтов ===== | ===== Разрешение конфликтов ===== | ||
| Рядок 51: | Рядок 79: | ||
| git merge --no-ff < | git merge --no-ff < | ||
| | | ||
| + | |||
| + | ===== Внесение изменений ===== | ||
| + | |||
| + | После редактирования некоторых файлов в проекте, | ||
| + | |||
| + | git status | ||
| + | |||
| + | Его вывод покажет, | ||
| + | |||
| + | git add < | ||
| + | git commit | ||
| + | |||
| + | Последняя команда откроет текстовый редактор для вставки короткого (или не очень) комментария, | ||
| + | |||
| + | |||
| ===== Загрузка на сервер ===== | ===== Загрузка на сервер ===== | ||
| Рядок 56: | Рядок 99: | ||
| git push origin < | git push origin < | ||
| + | |||
| + | ===== Удаление ветки ===== | ||
| + | |||
| + | ==== локальной ==== | ||
| + | |||
| + | git branch -d < | ||
| + | |||
| + | ==== удалённой ==== | ||
| + | |||
| + | git push origin --delete < | ||
| + | |||
| + | |||
| + | |||
| + | ===== Изменение комментария ===== | ||
| + | |||
| + | ==== К последнему коммиту ==== | ||
| + | |||
| + | |||
| + | Если возникла необходимость изменить комментарий к сохранённому коммиту, | ||
| + | |||
| + | git commit --amend | ||
| + | |||
| + | Если изменения уже были отправлены на сервер, | ||
| + | |||
| + | git push < | ||
| + | |||
| + | |||
| + | ==== К ранним коммитам ==== | ||
| + | |||
| + | Если нужно отредактировать комментарий не к последнему коммиту, | ||
| + | |||
| + | git rebase --interactive $parent_of_flawed_commit | ||
| + | |||
| + | где '' | ||
| + | |||
| + | После этого откроется редактор со списком коммитов, | ||
| + | |||
| + | < | ||
| + | # p, pick = use commit | ||
| + | # r, reword = use commit, but edit the commit message | ||
| + | # e, edit = use commit, but stop for amending | ||
| + | # s, squash = use commit, but meld into previous commit | ||
| + | # f, fixup = like " | ||
| + | # x, exec = run command (the rest of the line) using shell | ||
| + | </ | ||
| + | |||
| + | После этого нужно следовать подсказкам Git. Чаще всего, всё сведётся просто к устранению конфликтов и выполнению команды | ||
| + | |||
| + | git rebase --continue | ||
| + | |||
| + | дл каждого конфликта. | ||
| + | |||
| + | Для публикации исправленных записей используется команда | ||
| + | |||
| + | git push origin < | ||
| + | |||
| + | После чего необходимо оповестить всех участников проекта о необходимости скопировать эти изменения к себе. | ||
| + | |||
| + | |||
| + | ====== Визуализация ====== | ||
| + | |||
| + | ===== Картинка ===== | ||
| + | |||
| + | ===== Видео ===== | ||
| + | |||
| + | Программа [[http:// | ||
| + | |||
| + | gource -1280x720 -o - | ffmpeg -y -r 60 -f image2pipe -vcodec ppm -i - -vcodec libx264 -preset ultrafast -crf 1 -threads 0 -bf 0 gource.mp4 | ||
| + | |||
| + | gource -1280x720 -o gource.ppm | ||
| + | ffmpeg -y -r 60 -f image2pipe -vcodec ppm -i gource.ppm -vcodec libx264 -preset ultrafast -crf 1 -threads 0 -bf 0 gource.mp4 | ||
| + | |||
| + | gource -1280x720 -o - | ffmpeg -y -r 60 -f image2pipe -vcodec ppm -i - -vcodec libvpx -b 10000K gource.webm | ||
| + | |||
| + | | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ====== Ссылки ====== | ||
| + | |||
| + | ===== Книги ===== | ||
| + | |||
| + | ==== На русском ==== | ||
| + | |||
| + | [[http:// | ||
| + | |||
| + | ==== На английском ==== | ||
| + | |||
| + | [[http:// | ||
git.1408743165.txt.bz2 · Востаннє змінено: повз wombat
