Git — это распределенная система контроля версий. Она позволяет хранить данные обо всех изменениях кода в конкретных папках на жестком диске и обеспечивает удобную командную работу.
Давайте поближе познакомимся с командами git push, git pull, git fetch и git merge.
Команда git push в ходе выполнения переносит все изменения, внесенные юзером, в удаленный репозиторий (например, такой как GitHub):
Git push 'remote_name' 'branch_name'
Чтобы отправить данные в удаленный репозиторий, нужно удостовериться, что все перемены зафиксированы в локальном репозитории. После того, как вы внесете изменения локально, вы сможете поделиться ими с помощью git push. Но прежде чем отправлять какие-либо перемены в удаленную ветку, рекомендуется запустить команду git pull. Это обновит локальную ветвь.
Вынужденная команда push при корректировке коммитов:
# make changes to a repo and git add git commit --amend # update the existing commit message git push --force origin main
Команда git commit --amend применяется для обновления прошлого коммита. Только после этого измененный коммит вынужденно выпускается с помощью команды git push --force.
Курсы разработчиков от наших партнеров Mate Academy, Robot Dreams и Powercode, помогут вам кратно увеличить ваши технические знания и получить наиболее высокооплачиваемую работу.
Команда git pull отвечает за скачивание данных с сервера. Процесс очень похож на клонирование репозитория, но здесь скачиваются не все коммиты, а только новые.
По сути, git pull — это сочетание команд git fetch (загружает коммиты, ссылки, файлы из удаленного репозитория в локальный) и git merge (объединяет несколько коммитов в один общий).
На первой стадии git pull выполняется команда fetch, ограниченная локальной веткой. Затем команда git pull выполняет слияние и формируется новый коммит.
git checkout new_feature git pull <remote repo>
Итак, сначала создается ветка. Затем выполняется команда git pull, в которой раздается удаленный репозиторий. Это ведет к переключению на ветку new_feature. Затем загрузка завершается и реализуется команда git merge, то есть происходит слияние двух веток.
Команда git fetch соединена с удаленным репозиторием, берет все изменения и сохраняет их локально. При клонировании репозитория, команда clone автоматически добавляет удаленный репозиторий под названием origin. Следственно, git fetch origin вынимает материал, отправленный на сервер после клонирования.
Чтобы рассмотреть процесс синхронизации локального репозитория с основной веткой, используется команда git fetch origin.
Это отобразит ветки, которые уже были загружены:
ale8fb5..45e66a4 main -> origin/main ale8fb5..9e8ab1c develop -> origin/develop * [new branch] some-feature -> origin/some-feature
Команда git merge связывает ряд коммитов в одно целое. В свою очередь git создает коммит слияния, где и объединяются изменения обеих последовательностей.
Бывают случаи, когда git находит конфликт в слиянии и к файлам присоединяются индикаторы: <<<<<<<, ======= и >>>>>>>:
<here is some content not affected by the conflict <<<<<<< main this is conflicted text from main ======= this is conflicted text from feature branch >>>>>>> feature branch;
По завершению слияния, выполните команду git add : таким образом вы проинформируете, что причина конфликта разрешена. Важно запомнить, что конфликты допустимы только в трехслойном слиянии и никогда не возникают при ускоренном.
Используя pull, git стремится сделать все за вас. То есть сводит любые внесенные коммиты в ветку. При применении fetch, git собирает коммиты и сохраняет их в локальном репозитории.
Условно говоря, git pull – это последовательность двух команд: git fetch (прием изменений от сервера) и git merge (слияние).
В свою очередь, git push переносит ветвь разработки в удаленную исходную точку, а git merge — объединяет изменения из разработки в локальную ветку.
git init — создание новых репозиториев;
git clone <remote> — клонирование удаленного репозитория;
git rm <file> — удаление файла;
git commit --amend — изменение последнего коммита;
git log — просмотр истории коммитов;
git branch <branch> — создание новой ветки;
git branch –d <branch> — удаление ветки;
git merge <branch> — слияние веток;
git push <remote> <branch> — отправка ветки на удаленный сервер;
git push <remote> :<branch> — удаление ветки на удаленном сервере;
git tag — просмотр меток;
git push <remote> <tag> — обмен метками;
git remote — отображение удаленных репозиториев;
git pull <remote> <branch> — получение данных из удаленного репозитория и слияние с локальным;
git push <remote> <branch> — отправка локальных изменений на удаленный сервер.
На фоне роста спроса на ликвидность в бычьем рынке 2025 года, криптозаймы снова выходят на…
Прокси (proxy), или прокси-сервер — это программа-посредник, которая обеспечивает соединение между пользователем и интернет-ресурсом. Принцип…
Согласитесь, было бы неплохо соединить в одно сайт и приложение для смартфона. Если вы еще…
Повсеместное распространение смартфонов привело к огромному спросу на мобильные игры и приложения. Миллиарды пользователей гаджетов…
В перечне популярных чат-ботов с искусственным интеллектом Google Bard (Gemini) еще не пользуется такой популярностью…
Скрипт (англ. — сценарий), — это небольшая программа, как правило, для веб-интерфейса, выполняющая определенную задачу.…