LINUX.ORG.RU

Терминология системы Git

 


0

2

Всем доброго

Парни объясните мне глупому точное определение терминов в git а то я немного запутался в освоении этой системы контроля версий.

Правильно ли я понял:

commit - сохранение изменений в локальный репозиторий

clone - клонирует полностью удалённый репозиторий в локальный каталог

push - синхронизирует изменённые файлы проекта с локального в удаленный репозиторий

pull - синхронизирует изменённые файлы проекта с удаленного репозитория в локальный

так же не совсем понял назначение команды fetch это тоже самое что и pull или нет?

Разъясните пожалуйста


Ответ на: комментарий от Deleted

Терминалогия

точное определение терминов

терминов

Ошибка не повторяется, так что это очевидная опечатка.

Stahl ★★☆ ()

Гхм, но ты заголовок-то подправь, ок?

Stahl ★★☆ ()

commit - сохранение изменений в локальный репозиторий

Cохранение изменений в индекс это add и производные, а commit это запись текущего состояния индекса в лог с описанием изменений.

surefire ★★★ ()
Последнее исправление: surefire (всего исправлений: 1 )

Все правильно.

pull это fetch + merge

fetch это «скачать, но не делать merge»

unt1tled ★★★★ ()

так же не совсем понял назначение команды fetch это тоже самое что и pull или нет?

pull это fetch + merge

andreyu ★★★★★ ()

push - синхронизирует изменённые файлы проекта с локального в удаленный репозиторий

ну русским же по белому написано «Update remote refs along with associated objects». Как это «непонятно»? Должно быть понятно, ведь это же гит. Потому что самый популярный и линусторвольц, да. </irony>

вообще не «изменённые файлы», а «снимки всех пользовательских файлов в репозитории»

littlechris ★★★ ()

Там всё немного сложнее. Лучше сразу читать Pro Git как уже советовали.

no-such-file ★★★★★ ()

В гите масса костылей и компромиссов

clone - клонирует полностью удалённый репозиторий в локальный каталог

Локальный каталог это и есть репозиторий. Можно клонировать локальный в локальный. Репозиторий состоит из базы данных (директория .git) и рабочей копии (собственно файлы)

git fetch скачивает из удаленной репы объекты которых нет в локальной базе. (обновления, ага) и он ничего не делает с рабочей копией, но он обновляет специальный реф — FETCH_HEAD — устанавливает его на последний коммит в удаленной репе

git pull делает git fetch && git merge FETCH_HEAD

Еще стоит почитать про git rebase ибо 99% пригодится

redixin ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.