A3.5 Команды Git — Совместная работа и обновление проектов

Совместная работа и обновление проектов

Не так уж много команд в Git требуют сетевого подключения для своей работы, практически все команды оперируют с локальной копией проекта. Когда вы готовы поделиться своими наработками, всего несколько команд помогут вам работать с удалёнными репозиториями.

git fetch

Команда git fetch связывается с удалённым репозиторием и забирает из него все изменения, которых у вас пока нет и сохраняет их локально.

Мы познакомились с ней в главе “Fetching and Pulling from Your Remotes” и продолжили знакомство в “Удалённые ветки”.

Мы использовали эту команду в нескольких примерах из главы “Contributing to a Project”.

Мы использовали её для скачивания запросов на слияние (pull request) из других репозиториев в главе “Pull Request Refs”, также мы рассмотрели использование git fetch для работы с упакованными репозиториями в главе “Создание пакетов”.

Мы рассмотрели тонкую настройку git fetch в главe и “Спецификации ссылок”.

git pull

Команда git pull работает как комбинация команд git fetch и git merge, т.е. Git вначале забирает изменения из указанного удалённого репозитория, а затем пытается слить их с текущей веткой.

Мы познакомились с ней в главе “Fetching and Pulling from Your Remotes” и показали как узнать, какие изменения будут приняты в случае применения в главе “Inspecting a Remote”.

Мы также увидели как она может оказаться полезной для разрешения сложностей при перемещении веток в главе “Rebase When You Rebase”.

Мы показали как можно использовать только URL удалённого репозитория без сохранения его в списке удалённых репозиториев в главе “Checking Out Remote Branches”.

И наконец мы показали как проверять криптографические подписи полученных коммитов, используя опцию --verify-signatures в главе “Подпись коммитов”.

git push

Команда git push используется для установления связи с удалённым репозиторием, вычисления локальных изменений отсутствующих в нём, и собственно их передачи в вышеупомянутый репозиторий. Этой команде нужно право на запись в репозиторий, поэтому она использует аутентификацию.

Мы познакомились с этой командой в главе “Pushing to Your Remotes”. Там мы рассмотрели основы обновления веток в удалённом репозитории. В главе “Отправка изменений” мы подробнее познакомились с этой командой, а в “Отслеживание веток” мы узнали как настроить отслеживание веток для автоматической передачи на удалённый репозиторий. В главе “Удаление веток на удалённом сервере” мы использовали флаг --delete для удаления веток на сервере, используя git push.

На протяжении главы “Contributing to a Project” мы показали несколько примеров использования git push для совместной работы в нескольких удалённых репозиториях одновременно.

В главе “Публикация изменений в подмодуле” мы использовали опцию --recurse-submodules чтобы удостовериться, что все субмодули будут опубликованы перед отправкой на проекта на сервер, что может быть реально полезным при работе с репозиториями, содержащими субмодули.

В главе “Other Client Hooks” мы поговорили о триггере pre-push, который может быть выполнен перед отправкой данных, чтобы проверить возможность этой отправки.

Наконец, в главе “Спецификации ссылок для отправки данных на сервер” мы рассмотрели передачу данных с полным указанием передаваемых ссылок, вместо использования распространённых сокращений. Это может быть полезным если вы хотите очень точно указать, какими изменениями хотите поделиться.

git remote

Команда git remote служит для управления списком удалённых репозиториев. Она позволяет сохранять длинные URL репозиториев в виде понятных коротких строк, например “origin”, так что вам не придётся забивать голову всякой ерундой и набирать её каждый раз для связи с сервером. Вы можете использовать несколько удалённых репозиториев для работы и git remote поможет добавлять, изменять и удалять их.

Эта команда детально рассмотрена в главе “Working with Remotes”, включая вывод списка удалённых репозиториев, добавление новых, удаление или переименование существующих.

Она используется практически в каждой главе, но всегда в одном и том же виде: git remote add <имя> <URL>.

git archive

Команда git archive используется для упаковки в архив указанных коммитов или всего репозитория.

Мы использовали git archive для для создания тарбола (tar.gz файла) всего проекта для передачи по сети в главе “Preparing a Release”.

git submodule

Команда git submodule используется для управления вложенными репозиториями. Например, это могут быть библиотеки или другие, используемые не только в этом проекте ресурсы. У команды submodule есть несколько под-команд — add, update, sync и др. — для управления такими репозиториями.

Исаточник

Запись опубликована в рубрике *Ubuntu, *Unix,*Linux. Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не спамер This plugin created by Alexei91