Git Push – вносим изменения на GitHub

Автор: | 23.08.2020

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

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

Чтобы иметь возможность перейти в удаленный репозиторий, вы должны убедиться, что все ваши изменения в локальном репозитории зафиксированы.

Рассмотрим git push как часть процесса синхронизации в Git. Синхронизация происходит между локальным и удаленным хранилищем, где источник и приемник могут отличаться. Есть много других частей для синхронизации, и git push-это одна из частей, потому что она загружает изменения, сделанные в локальном репозитории, чтобы поддерживать удаленный репозиторий в актуальном состоянии. В этом нет ничего сложного, и концепция проста, как и ее синтаксис.

Читайте также: Подключение локального репозитория к удаленному репозиторию GitHub.

Приведенного выше изображения достаточно для понимания концепции в двух словах.

Git Push

Пользователь клонирует репозиторий в качестве первого шага, чтобы внести некоторые изменения в репозиторий.

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

После завершения всех изменений пользователь затем фиксирует все изменения в локальном репозитории.

А затем передает эти изменения на удаленный сервер. Наконец, он синхронизирует локальный и удаленный репозитории.

 

Синтаксис команды git Push в Git

Выполнение команды git push происходит путем ввода следующей команды:

git push <remote_repo> <branch_name>

remote_repo: это имя (или псевдоним) удаленного репозитория, в который мы переносим изменения.

branch_name: это ветвь, которую пользователь толкает в удаленный репозиторий.

Представьте себе, что ветвь (branch) в Git подобна ветвям в дереве. Каждая ветвь представляет собой новую функцию или модификацию, находящуюся в стадии разработки. Кроме того, основная ветвь — это стабильный код, подобный стволу дерева, также называемый master branch (главной ветвью). Что, в свою очередь, помогает нестабильному коду ветвей держаться подальше от стабильного основного кода.

Читайте также: Как Создать Репозиторий Git.

Как перенести изменения из локального репозитория в удаленный репозиторий в Git

Чтобы протолкнуть некоторые изменения в удаленный репозиторий, этот репозиторий должен, прежде всего, содержать некоторые коммиты в локальной системе. Поэтому в этом разделе мы сначала создадим некоторые изменения в репозитории. Во-вторых, мы зафиксируем эти изменения и, наконец, отразим их в удаленном репозитории.

Перед созданием изменений в репозитории убедитесь, что вы выполнили следующие операции:

  • У вас раздвоенный репозитория на GitHub.
  • Вы клонировали один и тот же репозиторий на локальную машину.

Примечание: в этом уроке мы будем использовать репозиторий ToolsQA, который уже был разветвлен и клонирован в предыдущих уроках. Пользователь может свободно использовать любой публичный репозиторий. Однако рекомендуется использовать один и тот же репозиторий для этого урока.

В качестве хорошей практики сначала проверьте, что у вас есть чистый репозиторий с помощью команды git status (никаких ожидающих изменений для фиксации).

Git Push

После выполнения команды git status появятся следующие строки:

On branch master: означает, что в данный момент мы находимся в главной ветви. Поскольку других ветвей пока нет, мы по умолчанию находимся в главной ветви.

Your branch is up to date with origin/master: Origin — это имя удаленного репозитория, которое мы дали при подключении локального репозитория к удаленному репозиторию.

Последовательность действий

  1. Перечислите все файлы с командой ls в репозитории.

Git Push

Так как существует только один файл (README.md это всего лишь инструкция), давайте внесем некоторые изменения в его содержание.

  1. Откройте файл с помощью вашего любимого редактора и внесите в него любые изменения.
  2. Мы изменили файл на следующий код.

changed_web_page_html

  1. Добавьте внесенные изменения в промежуточную область и зафиксируйте их.

committing_clone

Примечание: GitHub и Git распознают любые изменения только через коммиты (commits). Если пользователь не зафиксировал изменения и пытается протолкнуть их на GitHub, он отобразит сообщение “Everything is up-to-date”

  1. Введите следующую команду, чтобы перенести эти изменения в репозиторий GitHub, и нажмите клавишу enter.

git push origin master

git_push

  1. Пользователь получает приглашение предоставить учетные данные с помощью GitHub в качестве части безопасности. Введите свои учетные данные и нажмите на кнопку входа в систему.

github

Читайте также: Как создать учетную запись и репозиторий на GitHub?

  1. Как только пользователь получит одобрение и изменения объединятся, он получит следующее сообщение в Git Bash.

git_push_command

Примечание: последние две строки выглядят следующим образом:

https://github.com/harishrajora805/ToolsQA.git: URL-адрес репозитория, который отражает изменения.

1в4522а..285f559: показывает хэш-значение обеих ветвей. Таким образом, хэш-значение конечного коммита, отраженного на GitHub, равно 285f559.

master -> master: строка master — > master показывает исходную ветвь, из которой происходит слияние с целевой ветвью. В приведенном выше сценарии обе ветви являются главными.

Строка Writing Objects: 100% имеет важное значение. В Git можно сказать, была ли команда push выполнена успешно или нет, только взглянув на эту строку. Если она показывает 100%, то все изменения успешно перенесены в облако.

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

Варианты Git Push

В git push command доступно множество опций, которые помогают нам достичь определенных конкретных задач всего за одно выполнение. В этом разделе мы рассмотрим основные и наиболее часто используемые параметры команды git push.

Prune Option

— опция prune в команде git push удалит ветвь XYZ из удаленного репозитория, если в локальном репозитории не существует ветви с таким же именем.

Использование: git push –prune remote XYZ

Dry Run Option

Эта опция будет выполнять и показывать выполнение команды git push, но не будет отправлять никаких обновлений в удаленный репозиторий.

Использование: git push –dry-run <remote> <local_branch> 

Atomic Option

Эта опция в git Push обеспечивает атомарную операцию на удаленном репозитории, т. е. либо каждую ссылку обновляет, либо вообще ничего.

git push –atomic <remote_repo> <working_branch>

All Option

Все опции будут выталкивать все ветви и их зафиксированные изменения в удаленный репозиторий.

Использование: git push-all <remote>

Git Pull
git pull

В последнем уроке мы познакомились с командой Git fetch и Read more

Git Fetch и Git Merge
Git Fetch и Git Merge

В одной из последних статей мы узнали о команде Git Read more

Как проверить зафиксированные изменения на GitHub

Мы уже знаем, как вносить изменения в локальное хранилище и Read more

Что такое git Clone и как клонировать репозиторий?
Что такое git Clone и как клонировать репозиторий?

"Клонирование" означает создание идентичных особей естественным или искусственным путем. Клонирование Read more

Что такое Git Fork?
Git Fork

Сегодня мы узнаем, как скопировать чужой репозиторий в наш аккаунт Read more

Подключение локального репозитория к удаленному репозиторию GitHub
Подключение локального репозитория к удаленному репозиторию GitHub

Все данные, доступные в локальном репозитории, могут быть загружены в Read more

Раздел: Git Метки:

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

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

двадцать + 15 =