🗊Презентация Система контроля версий Git

Нажмите для полного просмотра!
Система контроля версий Git, слайд №1Система контроля версий Git, слайд №2Система контроля версий Git, слайд №3Система контроля версий Git, слайд №4Система контроля версий Git, слайд №5Система контроля версий Git, слайд №6Система контроля версий Git, слайд №7Система контроля версий Git, слайд №8Система контроля версий Git, слайд №9Система контроля версий Git, слайд №10Система контроля версий Git, слайд №11Система контроля версий Git, слайд №12Система контроля версий Git, слайд №13Система контроля версий Git, слайд №14Система контроля версий Git, слайд №15Система контроля версий Git, слайд №16Система контроля версий Git, слайд №17Система контроля версий Git, слайд №18Система контроля версий Git, слайд №19Система контроля версий Git, слайд №20Система контроля версий Git, слайд №21Система контроля версий Git, слайд №22Система контроля версий Git, слайд №23Система контроля версий Git, слайд №24Система контроля версий Git, слайд №25Система контроля версий Git, слайд №26Система контроля версий Git, слайд №27Система контроля версий Git, слайд №28Система контроля версий Git, слайд №29Система контроля версий Git, слайд №30Система контроля версий Git, слайд №31Система контроля версий Git, слайд №32Система контроля версий Git, слайд №33Система контроля версий Git, слайд №34Система контроля версий Git, слайд №35Система контроля версий Git, слайд №36Система контроля версий Git, слайд №37Система контроля версий Git, слайд №38Система контроля версий Git, слайд №39Система контроля версий Git, слайд №40Система контроля версий Git, слайд №41Система контроля версий Git, слайд №42Система контроля версий Git, слайд №43

Содержание

Вы можете ознакомиться и скачать презентацию на тему Система контроля версий Git. Доклад-сообщение содержит 43 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Система контроля версий. V1.0
Лободин Дмитрий 
Dimagalobodin@gmail.com
Описание слайда:
Система контроля версий. V1.0 Лободин Дмитрий Dimagalobodin@gmail.com

Слайд 2





Дорожная Карта:
Что это за зверь, основы Git
Три состояния файлов
Первоначальная настройка Git
Основной синтаксис для работы
Описание слайда:
Дорожная Карта: Что это за зверь, основы Git Три состояния файлов Первоначальная настройка Git Основной синтаксис для работы

Слайд 3





Почти все операции - локальные
Для совершения большинства операций в Git'е необходимы только локальные файлы и ресурсы, т.е. обычно информация с других компьютеров в сети не нужна. Если вы пользовались централизованными системами, где практически на каждую операцию накладывается сетевая задержка, вы, возможно, подумаете, что боги наделили Git неземной силой. Поскольку вся история проекта хранится локально у вас на диске, большинство операций кажутся практически мгновенными.
Описание слайда:
Почти все операции - локальные Для совершения большинства операций в Git'е необходимы только локальные файлы и ресурсы, т.е. обычно информация с других компьютеров в сети не нужна. Если вы пользовались централизованными системами, где практически на каждую операцию накладывается сетевая задержка, вы, возможно, подумаете, что боги наделили Git неземной силой. Поскольку вся история проекта хранится локально у вас на диске, большинство операций кажутся практически мгновенными.

Слайд 4





Git Следит за целостностью данных
Перед сохранением любого файла Git вычисляет контрольную сумму, и она становится индексом этого файла. Поэтому невозможно изменить содержимое файла или каталога так, чтобы Git не узнал об этом. Эта функциональность встроена в сам фундамент Git'а и является важной составляющей его философии. Если информация потеряется при передаче или повредится на диске, Git всегда это выявит.
Механизм, используемый Git'ом для вычисления контрольных сумм, называется SHA-1 хешем. Это строка из 40 шестнадцатеричных символов (0-9 и a-f), вычисляемая в Git'е на основе содержимого файла или структуры каталога. SHA-1 хеш выглядит примерно так: 24b9da6552252987aa493b52f8696cd6d3b00373
Описание слайда:
Git Следит за целостностью данных Перед сохранением любого файла Git вычисляет контрольную сумму, и она становится индексом этого файла. Поэтому невозможно изменить содержимое файла или каталога так, чтобы Git не узнал об этом. Эта функциональность встроена в сам фундамент Git'а и является важной составляющей его философии. Если информация потеряется при передаче или повредится на диске, Git всегда это выявит. Механизм, используемый Git'ом для вычисления контрольных сумм, называется SHA-1 хешем. Это строка из 40 шестнадцатеричных символов (0-9 и a-f), вычисляемая в Git'е на основе содержимого файла или структуры каталога. SHA-1 хеш выглядит примерно так: 24b9da6552252987aa493b52f8696cd6d3b00373

Слайд 5





Зафиксированное состояние файла
Значит, что файл уже сохранён в вашей локальной базе.
Описание слайда:
Зафиксированное состояние файла Значит, что файл уже сохранён в вашей локальной базе.

Слайд 6





Рабочий каталог, область подготовленных файлов, каталог Git'а
Таким образом, в проектах, использующих Git, есть три части: 
Каталог Git'а (Git directory) 
Рабочий каталог (working directory) 
Область подготовленных файлов (staging area).
Описание слайда:
Рабочий каталог, область подготовленных файлов, каталог Git'а Таким образом, в проектах, использующих Git, есть три части: Каталог Git'а (Git directory) Рабочий каталог (working directory) Область подготовленных файлов (staging area).

Слайд 7





Каталог Git'а

Это место, где Git хранит метаданные и базу данных объектов вашего проекта. Это наиболее важная часть Git'а, и именно она копируется, когда вы клонируете репозиторий с другого компьютера.
Описание слайда:
Каталог Git'а Это место, где Git хранит метаданные и базу данных объектов вашего проекта. Это наиболее важная часть Git'а, и именно она копируется, когда вы клонируете репозиторий с другого компьютера.

Слайд 8





Рабочий каталог

Это извлечённая из базы копия определённой версии проекта. Эти файлы достаются из сжатой базы данных в каталоге Git'а и помещаются на диск для того, чтобы вы их просматривали и редактировали.
Описание слайда:
Рабочий каталог Это извлечённая из базы копия определённой версии проекта. Эти файлы достаются из сжатой базы данных в каталоге Git'а и помещаются на диск для того, чтобы вы их просматривали и редактировали.

Слайд 9





Область подготовленных файлов
Это обычный файл, обычно хранящийся в каталоге Git'а, который содержит информацию о том, что должно войти в следующий коммит. Иногда его называют индексом (index), но в последнее время становится стандартом называть его областью подготовленных файлов (staging area).
Описание слайда:
Область подготовленных файлов Это обычный файл, обычно хранящийся в каталоге Git'а, который содержит информацию о том, что должно войти в следующий коммит. Иногда его называют индексом (index), но в последнее время становится стандартом называть его областью подготовленных файлов (staging area).

Слайд 10





Стандартный рабочий процесс с использованием Git'а
Вы вносите изменения в файлы в своём рабочем каталоге.
Подготавливаете файлы, добавляя их слепки в область подготовленных файлов.
Делаете коммит, который берёт подготовленные файлы из индекса и помещает их в каталог Git'а на постоянное хранение.
Коментарий к процессу: 
Если рабочая версия файла совпадает с версией в каталоге Git'а, файл считается зафиксированным. Если файл изменён, но добавлен в область подготовленных данных, он подготовлен. Если же файл изменился после выгрузки из БД, но не был подготовлен, то он считается изменённым.
Описание слайда:
Стандартный рабочий процесс с использованием Git'а Вы вносите изменения в файлы в своём рабочем каталоге. Подготавливаете файлы, добавляя их слепки в область подготовленных файлов. Делаете коммит, который берёт подготовленные файлы из индекса и помещает их в каталог Git'а на постоянное хранение. Коментарий к процессу: Если рабочая версия файла совпадает с версией в каталоге Git'а, файл считается зафиксированным. Если файл изменён, но добавлен в область подготовленных данных, он подготовлен. Если же файл изменился после выгрузки из БД, но не был подготовлен, то он считается изменённым.

Слайд 11





Файл ~/.gitconfig
Хранит настройки конкретного пользователя. Этот файл используется при указании параметра --global.
В системах семейства Windows Git ищет файл .gitconfig в каталоге $HOME (C:\$USER или C:\Users\$USER).
Описание слайда:
Файл ~/.gitconfig Хранит настройки конкретного пользователя. Этот файл используется при указании параметра --global. В системах семейства Windows Git ищет файл .gitconfig в каталоге $HOME (C:\$USER или C:\Users\$USER).

Слайд 12





Имя пользователя
Первое, что вам следует сделать после установки Git'а, — указать ваше имя и адрес электронной почты. Это важно, потому что каждый коммит в Git'е содержит эту информацию, и она включена в коммиты, передаваемые вами, и не может быть далее изменена:
  $ git config --global user.name "John Doe" 
  $ git config --global user.email johndoe@example.com
  Повторюсь, что, если указана опция --global , то эти настройки достаточно сделать только один раз, поскольку в этом случае Git будет использовать эти данные для всего, что вы делаете в этой системе. Если для каких-то отдельных проектов вы хотите указать другое имя или электронную почту, можно выполнить эту же команду 
без параметра  --global в каталоге с нужным проектом
Описание слайда:
Имя пользователя Первое, что вам следует сделать после установки Git'а, — указать ваше имя и адрес электронной почты. Это важно, потому что каждый коммит в Git'е содержит эту информацию, и она включена в коммиты, передаваемые вами, и не может быть далее изменена: $ git config --global user.name "John Doe" $ git config --global user.email johndoe@example.com Повторюсь, что, если указана опция --global , то эти настройки достаточно сделать только один раз, поскольку в этом случае Git будет использовать эти данные для всего, что вы делаете в этой системе. Если для каких-то отдельных проектов вы хотите указать другое имя или электронную почту, можно выполнить эту же команду без параметра  --global в каталоге с нужным проектом

Слайд 13





Выбор редактора
По умолчанию Git использует стандартный редактор вашей системы, обычно это Vi или Vim. Если вы хотите использовать другой текстовый редактор, например, NotePad++, можно сделать следующее:   
     git config --global core.editor "'E:\Games\Notepad++\notepad++.exe' 
    -multiInst -notabbar -nosession -noPlugin"
Описание слайда:
Выбор редактора По умолчанию Git использует стандартный редактор вашей системы, обычно это Vi или Vim. Если вы хотите использовать другой текстовый редактор, например, NotePad++, можно сделать следующее: git config --global core.editor "'E:\Games\Notepad++\notepad++.exe' -multiInst -notabbar -nosession -noPlugin"

Слайд 14





Проверка настроек
Если вы хотите проверить используемые настройки, можете использовать команду git config –list
       Пример:
 $ git config --list 
user.name=Scott Chacon 
user.email=schacon@gmail.com 
color.status=auto 
color.branch=auto 
color.interactive=auto 
color.diff=auto 
...
Описание слайда:
Проверка настроек Если вы хотите проверить используемые настройки, можете использовать команду git config –list Пример: $ git config --list user.name=Scott Chacon user.email=schacon@gmail.com color.status=auto color.branch=auto color.interactive=auto color.diff=auto ...

Слайд 15





Как получить помощь?
Например, так можно открыть руководство по команде config:
      git help config
Эти команды хороши тем, что ими можно пользоваться всегда, даже без подключения к сети
Описание слайда:
Как получить помощь? Например, так можно открыть руководство по команде config: git help config Эти команды хороши тем, что ими можно пользоваться всегда, даже без подключения к сети

Слайд 16





Создание Git – репозитория 
Для создания Git-репозитория существуют два основных подхода.
 Первый подход — импорт в Git уже существующего проекта или каталога.
Второй — клонирование уже существующего репозитория с сервера.
Описание слайда:
Создание Git – репозитория Для создания Git-репозитория существуют два основных подхода. Первый подход — импорт в Git уже существующего проекта или каталога. Второй — клонирование уже существующего репозитория с сервера.

Слайд 17





Создание репозитория в существующем каталоге 
Если вы собираетесь начать использовать Git для существующего проекта, то вам необходимо перейти в проектный каталог и в командной строке ввести   git init.
Эта команда создаёт в текущем каталоге новый подкаталог с именем .git содержащий все необходимые файлы репозитория — основу Git-репозитория. На этом этапе ваш проект ещё не находится под версионным контролем.
Описание слайда:
Создание репозитория в существующем каталоге Если вы собираетесь начать использовать Git для существующего проекта, то вам необходимо перейти в проектный каталог и в командной строке ввести git init. Эта команда создаёт в текущем каталоге новый подкаталог с именем .git содержащий все необходимые файлы репозитория — основу Git-репозитория. На этом этапе ваш проект ещё не находится под версионным контролем.

Слайд 18





Файл .gitignor
создаем txt фаил = имя .gitignore
Команды игнора для файлов папок
# <- комментарий
logs/(Имя папки)
# txt files
docs/*.txt// Все файлы .txt в этой папке, будут проигнорированы
показать не отслеживаемые файлы
$ git status --untracked-files=all
Описание слайда:
Файл .gitignor создаем txt фаил = имя .gitignore Команды игнора для файлов папок # <- комментарий logs/(Имя папки) # txt files docs/*.txt// Все файлы .txt в этой папке, будут проигнорированы показать не отслеживаемые файлы $ git status --untracked-files=all

Слайд 19





Добавления всех файлов проекта в Git 
Используем команду “git add .”  и добаляем все файлы под версионный контроль
Варианты команды:
 git *.расширение – все файлы одного расширения 
Git Имя_файла. Расширение
Удаление файла из Git
$ git rm --cached ИмяФайла.разширение
Добавление всех файлов в коммит
$ git commit -a -m"init"(-а = all, -m = коментарий)
Описание слайда:
Добавления всех файлов проекта в Git Используем команду “git add .” и добаляем все файлы под версионный контроль Варианты команды: git *.расширение – все файлы одного расширения Git Имя_файла. Расширение Удаление файла из Git $ git rm --cached ИмяФайла.разширение Добавление всех файлов в коммит $ git commit -a -m"init"(-а = all, -m = коментарий)

Слайд 20





Клонирование существующего репозитория
Если вы желаете получить копию существующего репозитория Git, например, проекта, в котором вы хотите поучаствовать, то вам нужна команда: git clone.
Git получает копию практически всех данных, что есть на сервере. Каждая версия каждого файла из истории проекта забирается (pulled) с сервера, когда вы выполняете git clone. 
      Пример: $ git clone git://github.com/schacon/grid.git 
      Эта команда создаёт каталог с именем grid, вы увидите в нём проектные файлы,                 пригодные для работы и использования. Если вы хотите клонировать репозиторий в     каталог, отличный от grid то:
      Пример: $ git clone git://github.com/schacon/grid.git mygrit
Эта команда делает всё то же самое, что и предыдущая, только результирующий каталог будет назван mygrit.
Описание слайда:
Клонирование существующего репозитория Если вы желаете получить копию существующего репозитория Git, например, проекта, в котором вы хотите поучаствовать, то вам нужна команда: git clone. Git получает копию практически всех данных, что есть на сервере. Каждая версия каждого файла из истории проекта забирается (pulled) с сервера, когда вы выполняете git clone. Пример: $ git clone git://github.com/schacon/grid.git Эта команда создаёт каталог с именем grid, вы увидите в нём проектные файлы, пригодные для работы и использования. Если вы хотите клонировать репозиторий в каталог, отличный от grid то: Пример: $ git clone git://github.com/schacon/grid.git mygrit Эта команда делает всё то же самое, что и предыдущая, только результирующий каталог будет назван mygrit.

Слайд 21





Запись изменений в репозиторий
Запомните, каждый файл в вашем рабочем каталоге может находиться в одном из двух состояний: 
Под версионным контролем (отслеживаемые)
Отслеживаемые файлы — это те файлы, которые были в последнем слепке состояния проекта (snapshot); они могут быть неизменёнными, изменёнными или подготовленными к коммиту (staged). 
2. Нет (неотслеживаемые)
Неотслеживаемые файлы — это всё остальное, любые файлы в вашем рабочем каталоге, которые не входили в ваш последний слепок состояния и не подготовлены к коммиту.
Описание слайда:
Запись изменений в репозиторий Запомните, каждый файл в вашем рабочем каталоге может находиться в одном из двух состояний:  Под версионным контролем (отслеживаемые) Отслеживаемые файлы — это те файлы, которые были в последнем слепке состояния проекта (snapshot); они могут быть неизменёнными, изменёнными или подготовленными к коммиту (staged).  2. Нет (неотслеживаемые) Неотслеживаемые файлы — это всё остальное, любые файлы в вашем рабочем каталоге, которые не входили в ваш последний слепок состояния и не подготовлены к коммиту.

Слайд 22





Жизненный цикл состояний файлов 
Описание слайда:
Жизненный цикл состояний файлов 

Слайд 23





Определение состояния файлов
Основной инструмент, используемый для определения, какие файлы в каком состоянии находятся — это команда  git status
     $ git status 
     # On branch master 
        nothing to commit, working directory clean
Это означает, что у вас чистый рабочий каталог, другими словами — в нём нет отслеживаемых изменённых файлов. И наконец, команда сообщает вам на какой ветке (branch) вы сейчас находитесь. Пока что это всегда ветка master — это ветка по умолчанию.
Описание слайда:
Определение состояния файлов Основной инструмент, используемый для определения, какие файлы в каком состоянии находятся — это команда git status $ git status # On branch master nothing to commit, working directory clean Это означает, что у вас чистый рабочий каталог, другими словами — в нём нет отслеживаемых изменённых файлов. И наконец, команда сообщает вам на какой ветке (branch) вы сейчас находитесь. Пока что это всегда ветка master — это ветка по умолчанию.

Слайд 24





Добавление нового файла в проект
Предположим, вы добавили в свой проект новый файл, простой файл README. Если этого файла раньше не было, и вы выполните git status, вы увидите свой не отслеживаемый файл вот так:
$ git status 
# On branch master 
# Untracked files: 
# (use "git add <file>..." to include in what will be committed) 
# 
# README 
#nothing added to commit but untracked files present (use "git add" to track)
Описание слайда:
Добавление нового файла в проект Предположим, вы добавили в свой проект новый файл, простой файл README. Если этого файла раньше не было, и вы выполните git status, вы увидите свой не отслеживаемый файл вот так: $ git status # On branch master # Untracked files: # (use "git add <file>..." to include in what will be committed) # # README #nothing added to commit but untracked files present (use "git add" to track)

Слайд 25





Отслеживания новых файлов
Для того чтобы начать отслеживать (добавить под версионный контроль) новый файл, используется команда git add. Чтобы начать отслеживание файла README, вы можете выполнить следующее:
       $ git add README
       Если вы снова выполните команду git status, то увидите, что файл README                                           	теперь отслеживаемый и индексированный:
 	$ git status 
	# On branch master 
	# Changes to be committed: 
	# (use "git reset HEAD <file>..." to unstage) 
	# 
	# new file: README 
	#
Описание слайда:
Отслеживания новых файлов Для того чтобы начать отслеживать (добавить под версионный контроль) новый файл, используется команда git add. Чтобы начать отслеживание файла README, вы можете выполнить следующее: $ git add README Если вы снова выполните команду git status, то увидите, что файл README теперь отслеживаемый и индексированный: $ git status # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # new file: README #

Слайд 26





Индексация измененных файлов
Давайте модифицируем файл, уже находящийся под версионным контролем. Если вы измените отслеживаемый файл benchmarks.rb и после этого снова выполните команду git status , то результат будет примерно следующим:
$ git status ( команда ) 
# On branch master ( мы в ветке master)
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
 # new file: README (готов к коммиту) 
 # Changes not staged for commit: 
# (use "git add <file>..." to update what will be committed) 
 # modified: benchmarks.rb ( модифицирован)
Описание слайда:
Индексация измененных файлов Давайте модифицируем файл, уже находящийся под версионным контролем. Если вы измените отслеживаемый файл benchmarks.rb и после этого снова выполните команду git status , то результат будет примерно следующим: $ git status ( команда ) # On branch master ( мы в ветке master) # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # new file: README (готов к коммиту) # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # modified: benchmarks.rb ( модифицирован)

Слайд 27






Файл benchmarks.rb находится в секции “Changes not staged for commit” — это означает, что отслеживаемый файл был изменён в рабочем каталоге, но пока не проиндексирован. Чтобы проиндексировать его, необходимо выполнить команду git add (это многофункциональная команда, она используется для добавления под версионный контроль новых файлов, для индексации изменений, а также для других целей, например для указания файлов с исправленным конфликтом слияния). Выполним git add, чтобы проиндексировать benchmarks.rb, а затем снова выполним git status:
$ git add benchmarks.rb 
$ git status 
# On branch master 
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
# 
# new file: README 
# modified: benchmarks.rb 
#
Теперь оба файла проиндексированы и войдут в следующий коммит.
Описание слайда:
Файл benchmarks.rb находится в секции “Changes not staged for commit” — это означает, что отслеживаемый файл был изменён в рабочем каталоге, но пока не проиндексирован. Чтобы проиндексировать его, необходимо выполнить команду git add (это многофункциональная команда, она используется для добавления под версионный контроль новых файлов, для индексации изменений, а также для других целей, например для указания файлов с исправленным конфликтом слияния). Выполним git add, чтобы проиндексировать benchmarks.rb, а затем снова выполним git status: $ git add benchmarks.rb $ git status # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # new file: README # modified: benchmarks.rb # Теперь оба файла проиндексированы и войдут в следующий коммит.

Слайд 28






В этот момент вы, предположим, вспомнили одно небольшое изменение, которое вы хотите сделать в benchmarks.rb до фиксации. Вы открываете файл, вносите и сохраняете необходимые изменения и вроде бы готовы к коммиту. Но давайте-ка ещё раз выполним git status:
$ git status 
# On branch master 
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
# 
# new file: README 
# modified: benchmarks.rb
 # 
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed) 
# 
# modified: benchmarks.rb
Описание слайда:
В этот момент вы, предположим, вспомнили одно небольшое изменение, которое вы хотите сделать в benchmarks.rb до фиксации. Вы открываете файл, вносите и сохраняете необходимые изменения и вроде бы готовы к коммиту. Но давайте-ка ещё раз выполним git status: $ git status # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # new file: README # modified: benchmarks.rb # # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # # modified: benchmarks.rb

Слайд 29






Что за чёрт? Теперь benchmarks.rb отображается как проиндексированный и непроиндексированный одновременно. Как такое возможно? Такая ситуация наглядно демонстрирует, что Git индексирует файл в точности в том состоянии, в котором он находился, когда вы выполнили команду git add. Если вы выполните коммит сейчас, то файл benchmarks.rb попадёт в коммит в том состоянии, в котором он находился, когда вы последний раз выполняли команду git add, а не в том, в котором он находится в вашем рабочем каталоге в момент выполнения git commit. Если вы изменили файл после выполнения git add, вам придётся снова выполнить git add, чтобы проиндексировать последнюю версию файла:
$ git add benchmarks.rb 
$ git status 
# On branch master 
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
# 
# new file: README 
# modified: benchmarks.rb
Описание слайда:
Что за чёрт? Теперь benchmarks.rb отображается как проиндексированный и непроиндексированный одновременно. Как такое возможно? Такая ситуация наглядно демонстрирует, что Git индексирует файл в точности в том состоянии, в котором он находился, когда вы выполнили команду git add. Если вы выполните коммит сейчас, то файл benchmarks.rb попадёт в коммит в том состоянии, в котором он находился, когда вы последний раз выполняли команду git add, а не в том, в котором он находится в вашем рабочем каталоге в момент выполнения git commit. Если вы изменили файл после выполнения git add, вам придётся снова выполнить git add, чтобы проиндексировать последнюю версию файла: $ git add benchmarks.rb $ git status # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # new file: README # modified: benchmarks.rb

Слайд 30





Откат файла до того состояния которое находится в репозитории
git checkout -- LICENSE.php
Описание слайда:
Откат файла до того состояния которое находится в репозитории git checkout -- LICENSE.php

Слайд 31





Просмотр индексированных и не индексированных изменении
Если результат работы команды git status недостаточно информативен для вас — вам хочется знать, что конкретно поменялось, а не только какие файлы были изменены — вы можете использовать команду git diff
$ git diff 
diff --git a/benchmarks.rb b/benchmarks.rb
 index 3cb747f..da65585 100644 
--- a/benchmarks.rb 
+++ b/benchmarks.rb
 @@ -36,6 +36,10 @@ def main 
		@commit.parents[0].parents[0].parents[0] 
			end 
+ run_code(x, 'commits 1') do 
+ git.commits.size 
+ end + run_code(x, 'commits 2') do log = git.commits('master', 15) log.size
Описание слайда:
Просмотр индексированных и не индексированных изменении Если результат работы команды git status недостаточно информативен для вас — вам хочется знать, что конкретно поменялось, а не только какие файлы были изменены — вы можете использовать команду git diff $ git diff diff --git a/benchmarks.rb b/benchmarks.rb index 3cb747f..da65585 100644 --- a/benchmarks.rb +++ b/benchmarks.rb @@ -36,6 +36,10 @@ def main @commit.parents[0].parents[0].parents[0] end + run_code(x, 'commits 1') do + git.commits.size + end + run_code(x, 'commits 2') do log = git.commits('master', 15) log.size

Слайд 32





Фиксация изменений 
Теперь, когда ваш индекс настроен так, как вам и хотелось, вы можете зафиксировать свои изменения. Запомните, всё, что до сих пор не проиндексировано — любые файлы, созданные или изменённые вами, и для которых вы не выполнили git add после момента редактирования — не войдут в этот коммит. Простейший способ зафиксировать изменения — это набрать git commit: Эта команда откроет выбранный вами текстовый редактор.
Есть и другой способ — вы можете набрать свой комментарий к коммиту в командной строке вместе с командой commit, указав его после параметра -m, как в следующем примере:
$ git commit -m "Story 182: Fix benchmarks for speed" 
[master]: created 463dc4f: "Fix benchmarks for speed" 
2 files changed, 3 insertions(+), 0 deletions(-) 
create mode 100644 README
Добавление всех файлов в коммит + индексация
$ git commit -a -m"init"(-а = all, -m = коментарий)
Описание слайда:
Фиксация изменений Теперь, когда ваш индекс настроен так, как вам и хотелось, вы можете зафиксировать свои изменения. Запомните, всё, что до сих пор не проиндексировано — любые файлы, созданные или изменённые вами, и для которых вы не выполнили git add после момента редактирования — не войдут в этот коммит. Простейший способ зафиксировать изменения — это набрать git commit: Эта команда откроет выбранный вами текстовый редактор. Есть и другой способ — вы можете набрать свой комментарий к коммиту в командной строке вместе с командой commit, указав его после параметра -m, как в следующем примере: $ git commit -m "Story 182: Fix benchmarks for speed" [master]: created 463dc4f: "Fix benchmarks for speed" 2 files changed, 3 insertions(+), 0 deletions(-) create mode 100644 README Добавление всех файлов в коммит + индексация $ git commit -a -m"init"(-а = all, -m = коментарий)

Слайд 33





Удаление файлов
Другая полезная штука, которую вы можете захотеть сделать — это удалить файл из индекса, оставив его при этом в рабочем каталоге. Другими словами, вы можете захотеть оставить файл на винчестере, и убрать его из-под бдительного ока Git'а. 
$ git rm --cached ИмяФайла.разширение
Это особенно полезно, если вы забыли добавить что-то в файл .gitignore
Описание слайда:
Удаление файлов Другая полезная штука, которую вы можете захотеть сделать — это удалить файл из индекса, оставив его при этом в рабочем каталоге. Другими словами, вы можете захотеть оставить файл на винчестере, и убрать его из-под бдительного ока Git'а. $ git rm --cached ИмяФайла.разширение Это особенно полезно, если вы забыли добавить что-то в файл .gitignore

Слайд 34





Перемещение файлов
Таким образом, наличие в Git'е команды mv выглядит несколько странным. Если вам хочется переименовать файл в Git'е, вы можете сделать что-то вроде: $ git mv file_from file_to
Описание слайда:
Перемещение файлов Таким образом, наличие в Git'е команды mv выглядит несколько странным. Если вам хочется переименовать файл в Git'е, вы можете сделать что-то вроде: $ git mv file_from file_to

Слайд 35





Просмотр истории комитов 
Наиболее простой и в то же время мощный инструмент для этого — команда git log.
Один из наиболее полезных параметров — это –p, который показывает дельту (разницу/diff), привнесенную каждым коммитом. Вы также можете использовать -2 что ограничит вывод до 2-х последних записей.
Наиболее интересный параметр — это format
$ git log --pretty=format:"%h - %an, %ar : %s" 
ca82a6d - Scott Chacon, 11 months ago : changed the version number 085bb3b - Scott Chacon, 11 months ago : removed unnecessary test code a11bef0 - Scott Chacon, 11 months ago : first commit
Описание слайда:
Просмотр истории комитов Наиболее простой и в то же время мощный инструмент для этого — команда git log. Один из наиболее полезных параметров — это –p, который показывает дельту (разницу/diff), привнесенную каждым коммитом. Вы также можете использовать -2 что ограничит вывод до 2-х последних записей. Наиболее интересный параметр — это format $ git log --pretty=format:"%h - %an, %ar : %s" ca82a6d - Scott Chacon, 11 months ago : changed the version number 085bb3b - Scott Chacon, 11 months ago : removed unnecessary test code a11bef0 - Scott Chacon, 11 months ago : first commit

Слайд 36





Параметры формата
Описание слайда:
Параметры формата

Слайд 37





Ограничение вывода команды log
вот параметры, ограничивающие по времени, такие как --since и --until, весьма полезны. Например, следующая команда выдаёт список коммитов, сделанных за последние две недели:
$ git log --since=2.weeks
Описание слайда:
Ограничение вывода команды log вот параметры, ограничивающие по времени, такие как --since и --until, весьма полезны. Например, следующая команда выдаёт список коммитов, сделанных за последние две недели: $ git log --since=2.weeks

Слайд 38





Использования графического интерфейса для истории
 Если наберёте в командной строке gitk, находясь в проекте, то увидите что-то наподобие
Описание слайда:
Использования графического интерфейса для истории  Если наберёте в командной строке gitk, находясь в проекте, то увидите что-то наподобие

Слайд 39





Создание ветвлений в Git
Описание слайда:
Создание ветвлений в Git

Слайд 40






Команды:
$ git checkout -b "name"// Имя новой ветки, создать и сразу переключится
Посмотреть ветки 
     $ git branch (-v доп. инфа и последние комиты)
Просто создание ветки без переключения
    $ git branch “namebranch”
    Переключение на другую ветку
	 $ git checkout "namebranch"
Описание слайда:
Команды: $ git checkout -b "name"// Имя новой ветки, создать и сразу переключится Посмотреть ветки $ git branch (-v доп. инфа и последние комиты) Просто создание ветки без переключения $ git branch “namebranch” Переключение на другую ветку $ git checkout "namebranch"

Слайд 41





Слияние веток 
Разрешение конфликтов при слиянии
Указание утилиты для слияния: $ git config --global merge.tool kdiff3 
Команда на слияние (заливаем в свою ветку другую ветку) $ git merge master
Запускаем утилиту для мержа(которую мы прописали в конфиг) $ git mergetool
Надо скачать kdiff3 https://sourceforge.net/projects/kdiff3/files/
И добавляем адресс в Git
$ git config --global mergetool.kdiff3.cmd '"F:\\KDiff3\\kdiff3" $BASE $LOCAL $REMOTE -o $MERGED'
теперь можно мержить  
$ git mergetool
Описание слайда:
Слияние веток Разрешение конфликтов при слиянии Указание утилиты для слияния: $ git config --global merge.tool kdiff3 Команда на слияние (заливаем в свою ветку другую ветку) $ git merge master Запускаем утилиту для мержа(которую мы прописали в конфиг) $ git mergetool Надо скачать kdiff3 https://sourceforge.net/projects/kdiff3/files/ И добавляем адресс в Git $ git config --global mergetool.kdiff3.cmd '"F:\\KDiff3\\kdiff3" $BASE $LOCAL $REMOTE -o $MERGED' теперь можно мержить $ git mergetool

Слайд 42





Регистрация на GitHub и делаем push(заталкиваем проект в веб)
git remote add origin https://github.com/DimagaXIII/DreamTeam-project.git
git push -u origin master(-u нужен только раз потом просто push)
затолкать в веб $ git push
посмотреть количество репозиториев git remote (-v путь к данному репозиторию)
Команда для проталкивания в веб всех локальных веток:
$ git config --global push.default matching
Описание слайда:
Регистрация на GitHub и делаем push(заталкиваем проект в веб) git remote add origin https://github.com/DimagaXIII/DreamTeam-project.git git push -u origin master(-u нужен только раз потом просто push) затолкать в веб $ git push посмотреть количество репозиториев git remote (-v путь к данному репозиторию) Команда для проталкивания в веб всех локальных веток: $ git config --global push.default matching

Слайд 43





Клонирование проекта себе в папку
Клонировать весь проект git clone https://github.com/DimagaXIII/DreamTeam-project.git( ссылка взята с GitHub)
Забрать фаил из веб репозитория себе в локальную базу .git: $ git fetch
для того что б фаил появился в рабочей папке $ git pull
Описание слайда:
Клонирование проекта себе в папку Клонировать весь проект git clone https://github.com/DimagaXIII/DreamTeam-project.git( ссылка взята с GitHub) Забрать фаил из веб репозитория себе в локальную базу .git: $ git fetch для того что б фаил появился в рабочей папке $ git pull



Похожие презентации
Mypresentation.ru
Загрузить презентацию