LINUX.ORG.RU

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

 


0

2

Всем доброго

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

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

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

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

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

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

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

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



Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от 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 ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.