Похожие презентации:
Система контроля версий GIT
1. Система контроля версий GIT
СИСТЕМА КОНТРОЛЯВЕРСИЙ GIT
2. Система контроля версий (СКВ)
СИСТЕМА КОНТРОЛЯВЕРСИЙ (СКВ)
Это инструмент для управления
изменениями в файлах проекта,
позволяющий разработчикам отслеживать
изменения и управлять версиями кода.
3. Локальные СКВ
ЛОКАЛЬНЫЕ СКВЭто системы, которые хранят изменения в
файлах на локальном компьютере без
подключения к удалённому репозиторию.
1. RCS (Revision Control System) — одна из
популярных локальных систем контроля
версий. Основана на работе с наборами
патчей, которые хранятся в специальном
формате на диске. Это позволяет
пересоздать любой файл на любой момент
времени, последовательно накладывая
патчи.
4. Централизованные СКВ
ЦЕНТРАЛИЗОВАННЫЕ СКВЭто системы, которые хранят всю историю
изменений и актуальные версии проекта на одном
сервере. Разработчики работают с локальными
копиями исходного кода и для получения
последних изменений или отправки своих правок
подключаются к серверу.
1. Subversion (SVN) — централизованная система
контроля версий, где все изменения
фиксируются на центральном сервере, а
разработчики синхронизируют свои локальные
копии с ним.
2. Perforce (Helix Core) — ориентирована на
команды разработчиков, работающих с
большими объёмами данных и бинарными
файлами, такими как игры и мультимедиа.
5. Распределённые СКВ
РАСПРЕДЕЛЁННЫЕ СКВЭто системы, в которых история проекта и
все изменения распределены между разными
копиями репозитория.
В таких системах каждый разработчик имеет
полную локальную копию проекта и может
работать над ним независимо. Это
обеспечивает высокую гибкость, отсутствие
необходимости постоянного подключения к
сети и возможность работать над проектом
даже в условиях оффлайн.
6.
Примеры таких СКВ:1. Git.
2. Mercurial. Система, похожая на Git, отличается
лаконичной командной строкой и строгой моделью
работы с историей изменений.
3. Bazaar. Распределённая система контроля версий,
разработанная компанией Canonical. Написана на
языке Python и работает под управлением
операционных систем Linux, Mac OS X и Windows.
4. Fossil. Распределённая система контроля версий,
система отслеживания ошибок и программное
обеспечение wiki.
5. Code Co-op. Одноранговая система контроля версий.
7. Подробнее про GIT
ПОДРОБНЕЕ ПРО GITЭто распределённая система контроля версий (Version Control
System, VCS), которая помогает отслеживать изменения в
коде, возвращаться к старым версиям и работать над проектом
вместе с другими разработчиками.
• У каждого разработчика есть полноценная копия
репозитория, включая всю историю проекта.
• Все операции выполняются локально без обращения
к серверу.
• Git — основа для популярных платформ совместной
разработки, таких как GitHub, GitLab и Bitbucket.
8. Понятие слепка
ПОНЯТИЕ СЛЕПКАСлепки (snapshots) в системе контроля версий Git —
это моментальные снимки состояния проекта на
определённый момент времени. В отличие от
традиционных систем, которые отслеживают
изменения как различия между двумя версиями, Git
сохраняет слепок всего проекта.
9. Почти все операции — локальные
ПОЧТИ ВСЕ ОПЕРАЦИИ —ЛОКАЛЬНЫЕ
1. Для совершения большинства операций в Git'е
необходимы только локальные файлы и ресурсы,
т.е. обычно информация с других компьютеров в
сети не нужна.
2. Поскольку вся история проекта хранится локально
у вас на диске, большинство операций кажутся
практически мгновенными.
10. целостность данных
ЦЕЛОСТНОСТЬ ДАННЫХПеред сохранением любого файла Git вычисляет
контрольную сумму, и она становится индексом этого
файла. Поэтому невозможно изменить содержимое
файла или каталога так, чтобы Git не узнал об этом.
Эта функциональность встроена в сам фундамент
Git'а и является важной составляющей его философии.
Если информация потеряется при передаче или
повредится на диске, Git всегда это выявит.
SHA-1 хеш, используемый для сохранения
целостности, выглядит примерно так:
B6DABFD326E06D8896CBE83B3BD52645CCE69C28
11. Три состояния файлов
ТРИ СОСТОЯНИЯ ФАЙЛОВ1. Изменённый файл – был изменён или создан, но
ещё не обработан Git.
2. Подготовленный файл – был изменён, но также
был отмечен для внесения в следующем коммите.
3. Зафиксированный файл – записан в локальную
базу данных.
12. Где можно скачать Git?
ГДЕ МОЖНО СКАЧАТЬ GIT?https://git-scm.com/downloads
13.
РЕГИСТРАЦИЯ В GITHUB14.
РЕГИСТРАЦИЯ В GITHUB15.
СОЗДАНИЕ РЕПОЗИТОРИЯ16. Команды GIT
КОМАНДЫ GITКонфигурируем Git:
git config --global user.name "My Name"
git config --global user.email myEmail@example.com
Инициализировать репозиторий:
git init
17. Команды GIT
КОМАНДЫ GITgit stаtus
Git отслеживает файлы в трёх основных разделах:
1. Рабочая директория — файловая система компьютера.
2. Область подготовленных файлов (staging area) — хранит содержание
следующего коммита.
3. HEAD — последний коммит в репозитории.
Команда отображает все файлы, которые различаются между этими разделами.
18. Команды GIT
КОМАНДЫ GITДобавления файлов в индекс — промежуточную область между рабочей
директорией и репозиторием:
git add .
git add название_файла.расширение
git add *.расширение
19. Команды GIT
КОМАНДЫ GITФиксация изменения в репозитории. Создаётся «снимок» (коммит) текущего
состояния проекта, включая все внесённые изменения.
git commit -m "текст коммита"
20. Команды GIT
КОМАНДЫ GITПодключение удалённого репозитория к локальному:
git remote add origin адрес_нашего_репозитория_на_GitHub
Проект может иметь несколько удаленных репозиториев одновременно.
Чтобы их различать, мы дадим им разные имена. Обычно главный репозиторий
называется origin.
Для просмотра, к какому проекту мы подключены:
git remote -v
21. Команды GIT
КОМАНДЫ GITЕсли вдруг у вас на этом месте показывается несколько репозиториев, то
скорее всего верхние команды привели к запутыванию веток, это можно
разрешить следующей командой. Также это команда может пригодиться, если у
вас возникли ошибки, связанные с unrelated-histories.
git pull origin master --allow-unrelated-histories
22. Команды GIT
КОМАНДЫ GITЕсли репозиторий указан неверно, его можно удалить командой:
git remote rm origin
Запрос изменений с сервера:
git pull origin master
Отправка локального коммита на сервер:
git push origin master
Просмотр истории изменений:
git log
23. Команды GIT
КОМАНДЫ GITСоздание новой ветки:
git branch название_ветки
Определение, в какой ветке мы:
git branch
Переключение на другую ветку или предыдущий коммит:
git checkout название_ветки/хеш_коммита
Слияние с веткой:
git merge название_ветки
Удаление ветки:
git branch –d название_ветки
24. Команды GIT
КОМАНДЫ GITЕсли изменения были в обеих ветках, конфликт неизбежен. Его нужно
разрешить, но сначала узнать, в чём был конфликт. Посмотрим, чем
отличаются наши ветки:
git diff
Если нужно удалить ветку, которая ещё не была объединена с другой веткой:
git branch –D название_ветки
Чтобы удалить ветку из удалённого репозитория GitHub:
git push origin --delete название_ветки
25. Команды GIT
КОМАНДЫ GITКлонировать репозиторий с GitHub:
git clone "адрес репозитория"
Программное обеспечение