Изучите Git с помощью Bitbucket Cloud
Цель
Изучение основ Git с помощью этого тематического обучающего руководства.
Краткое описание основной задачи
Ваша цель — изучить основы Git путем освоения обучающего руководства. Здесь мы вообразим, что мы отслеживаем космические станции своей команды. В этом руководстве рассматриваются команды
- git clone, git config, git add, git status, git commit, git push, git pull, git branch, git checkout и git merge
Время
30 минут
Аудитория
Те, кто только начинает работу с Git и Bitbucket Cloud
Создание репозитория Git
Вы — новый администратор космической станции Bitbucket, это требует самоорганизации. Файлы, которые вы создаете для космической станции, должны храниться в одном месте, чтобы к ним могли обращаться участники команды из любой точки Вселенной. В Bitbucket это означает, что нужно все добавлять в репозиторий. Давайте создадим его!
Несколько интересных фактов о репозиториях
- Независимо от того, работаете ли вы с одним или несколькими файлами, вы получаете доступ ко всем файлам в локальном репозитории.
- Вы можете просматривать публичные репозитории, не имея аккаунта Bitbucket, если у вас есть URL-адреса этих репозиториев.
- Каждый репозиторий принадлежит аккаунту пользователя или команде. В первом случае владельцем репозитория является пользователь, а во втором — команда.
- Удалить репозиторий может только его владелец. Если репозиторий принадлежит команде, его может удалить администратор.
- Проект программного кода может состоять из нескольких репозиториев для нескольких аккаунтов или одного репозитория, принадлежащего одному аккаунту.
- Размер репозитория ограничен 2 ГБ, однако рекомендуется использовать репозитории размером не более 1 ГБ.
![Логотип Git](https://wac-cdn.atlassian.com/dam/jcr:a97c36ee-9cef-4e49-8c5f-8d53ab682e1a/Git-sq.png?cdnVersion=2022)
Связанные материалы
Команды Git
![Логотип Bitbucket](https://wac-cdn.atlassian.com/dam/jcr:03116c1f-27e5-4a82-9b9b-806786578fb2/logos-bitbucket-icon-gradient-blue-121x109@2x.png?cdnVersion=2022)
СМ. РЕШЕНИЕ
Настройка репозитория
Шаг 1. Создайте репозиторий
Изначально репозиторий, созданный в Bitbucket, будет пустым, без программного кода. Ничего страшного, скоро вы начнете добавлять туда новые файлы. Репозиторий Bitbucket будет центральным репозиторием для ваших файлов. Другие пользователи смогут получить доступ к нему, только если вы предоставите им соответствующие права. После создания репозитория вы скопируете его в свою локальную систему. После этого вы сможете обновлять версию в одном репозитории, а затем переносить изменения в другой.
Создать репозиторий можно следующим образом:
1. В Bitbucket нажмите значок + на общей боковой панели и выберите Repository (Репозиторий).
![Выбор репозитория на боковой панели навигации Bitbucket](https://wac-cdn.atlassian.com/dam/jcr:bd8f6b7c-f3ad-43c2-b178-7e72e5b3c768/bbc_globalsidebar_create_repo.png?cdnVersion=2022)
В Bitbucket отобразится страница Create a new repository (Создание нового репозитория). Внимательно изучите содержимое этого диалогового окна. Все настройки, которые вы укажете на этой странице, кроме пункта Repository type (Тип репозитория), потом можно будет изменить.
![Окно создания новой конфигурации репозитория в Bitbucket](https://wac-cdn.atlassian.com/dam/jcr:a7ae8cb6-c567-45d0-a560-2c64c985be87/03.png?cdnVersion=2022)
2. В поле Name
(Имя) введите BitbucketStationLocations. Bitbucket использует значение поля Name для создания URL-адреса репозитория. Например, если у пользователя the_best
есть репозиторий с именем awesome_repo
, URL-адрес этого репозитория будет выглядеть так: https://bitbucket.org/the_best/awesome_repo
.
3. Access level (Уровень доступа): установите флажок в поле This is a private repository (Это частный репозиторий). Частный репозиторий будет виден только вам и тем, кому вы предоставите доступ. Если этот флажок не установлен, любой пользователь сможет увидеть ваш репозиторий.
4. В поле Repository type (Тип репозитория) выберите вариант Git. Помните, что после нажатия кнопки Create repository (Создать репозиторий) вы уже не сможете изменить тип репозитория.
5. Нажмите Create repository (Создать репозиторий). В Bitbucket будет создан репозиторий, после чего откроется страница Overview (Обзор).
Шаг 2. Изучите новый репозиторий
Внимательно изучите созданный репозиторий. Вы должны оказаться на странице Overview (Обзор) репозитория:
![Обзорный экран репозитория в Bitbucket](https://wac-cdn.atlassian.com/dam/jcr:04e318f1-a813-4b0a-a5f4-35c6654cc51a/explore_repository_git.gif?cdnVersion=2022)
Нажмите + на общей боковой панели, чтобы увидеть стандартные действия для репозиториев. Нажимайте элементы на боковой панели навигации, чтобы узнать, что за ними скрывается, в том числе Settings (Настройки), где можно изменить сведения о репозитории и другие параметры. Чтобы просмотреть список горячих клавиш для перехода к этим элементам, нажмите ? на клавиатуре.
Если вы нажмете Commits (Коммиты) на боковой панели, то обнаружите, что коммитов нет, потому что вы еще не создали содержимое репозитория. Ваш репозиторий является частным, а поскольку вы не отправляли никому приглашений для доступа к нему, то единственный человек, который может создавать и редактировать содержимое репозитория, — это вы, его владелец.
Копирование репозитория Git и добавление файлов
У вас есть место для хранения файлов космических станций и обмена ими. Теперь нужно научиться обращаться к нему из локальной системы. Для этого нужно копировать репозиторий Bitbucket в локальную систему. В Git копирование репозитория называется «клонированием». При клонировании репозитория создается соединение между сервером Bitbucket (обозначается в Git термином origin) и локальной системой.
Шаг 1. Клонируйте репозиторий в локальную систему
С рабочего стола откройте браузер и окно терминала. В окне терминала проделайте следующее.
1. Перейдите в домашний каталог (~).
$ cd ~
Когда вы станете использовать Bitbucket активнее, вы наверняка будете работать с несколькими репозиториями. С учетом этого хорошо бы создать каталог, который будет содержать в себе все эти репозитории.
2. Создайте каталог для размещения своих репозиториев.
$ mkdir repos
3. В терминале сделайте новый каталог для репозиториев своим рабочим каталогом.
$ cd ~/repos
4. Из Bitbucket перейдите в репозиторий BitbucketStationLocations.
5. Нажмите значок «+» на общей боковой панели и выберите Clone this repository (Клонировать репозиторий).
В Bitbucket появится всплывающее диалоговое окно клонирования. По умолчанию в этом окне выбран протокол HTTPS или SSH, в зависимости от ваших настроек. В рамках этого руководства не изменяйте протокол по умолчанию.
![Клонирование репозитория в Bitbucket](https://wac-cdn.atlassian.com/dam/jcr:05fe1970-336f-4b70-9a1d-b5bfb86356a2/git_clone_repo.gif?cdnVersion=2022)
6. Скопируйте выделенную команду клонирования.
7. Вставьте команду, скопированную из Bitbucket, в окно терминала и нажмите Return.
8. В ответ на запрос терминала введите свой пароль Bitbucket. Если вы создали аккаунт через Google, используйте пароль для этого аккаунта.
- Если возникла ошибка пароля Windows:
- В некоторых версиях ОС Microsoft Windows и Git может возникнуть ошибка, как в следующем примере.
Пример ошибки пароля Windows при клонировании
- В некоторых версиях ОС Microsoft Windows и Git может возникнуть ошибка, как в следующем примере.
$ git clone
https://emmap1@bitbucket.org/emmap1/bitbucketstationlocations.git
Cloning into 'bitbucketspacestation'...
fatal: could not read
Password for 'https://emmap1@bitbucket.org': No such file or directory
- Если вы столкнулись с такой ошибкой, введите следующую команду:
$ git config --global core.askpass
- Затем вернитесь к шагу 4 и повторите процедуру клонирования. Теперь пароль должен запросить агент Bash. Вам придется ввести его только один раз.
В этот момент окно терминала должно выглядеть примерно так:
$ cd ~/repos
$ git clone https://emmap1@bitbucket.org/emmap1/bitbucketstationlocations.git
Cloning into 'bitbucketstationlocations'...
Password
warning: You appear to have cloned an empty repository.
- Вам известно, что ваш репозиторий пуст? Если помните, вы еще не добавили в него файлы исходного кода.
9. Выведите список содержимого в каталоге репозиториев. Вы заметите в нем каталог bitbucketstationlocations
.
$ ls
Поздравляем! Клонирование репозитория в локальную систему выполнено.
Шаг 2. Добавьте файл в локальный репозиторий и поместите его в Bitbucket
Теперь, когда в вашей локальной системе есть репозиторий, пора приступать к работе. Вы собираетесь отслеживать местоположение всех своих космических станций. Давайте создадим файл для хранения данных обо всех местоположениях.
1. В окне терминала перейдите на верхний уровень локального репозитория.
$ cd ~/repos/bitbucketstationlocations/
2. Чтобы создать новый файл с заданным текстом, введите в окне терминала следующую строку.
$ echo "Earth's Moon" >> locations.txt
Если на выходе командной строки ничего нет, значит, файл создан правильно!
3. Получите информацию о статусе локального репозитория. О продвижении проекта по сравнению с репозиторием Bitbucket можно узнать с помощью команды git status
.
На этом этапе Git знает, что вы создали новый файл. Вы увидите что-то подобное:
$ git status
On branch main
Initial commit
Untracked files:
(use "git add <file>..." to include in what will be committed)
locations.txt
nothing added to commit but untracked files present (use "git add" to track)
Это неотслеживаемый файл: Git видит, что он не является частью предыдущего коммита. Вывод команды status подсказывает, что следующим шагом должно стать добавление файла.
4. Чтобы в Git осуществлялось отслеживание нового файла locations.txt
, введите команду git add
. Если команда git add
введена правильно, на ее выходе не будет ничего, как и при создании файла.
$ git add locations.txt
Команда git add
переносит изменения из рабочего каталога в раздел проиндексированных файлов Git. Раздел проиндексированных файлов — это место, где подготавливается снимок состояния для набора изменений, прежде чем выполнить их коммит в официальную историю.
5. Проверьте статус файла.
$ git status
On branch main
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: locations.txt
Вы заметите, что новый файл добавлен (проиндексирован), и сможете сделать коммит, когда будете готовы. Команда git status
показывает состояние рабочего каталога и проиндексированного снимка.
6. Введите команду git commit
с комментарием к коммиту, как показано в следующей строке. Параметр -m указывает, что далее следует комментарий к коммиту.
$ git commit -m 'Initial commit'
[main (root-commit) fedc3d3] Initial commit
1 file changed, 1 insertion(+)
create mode 100644 locations.txt
Команда git commit
выполняет коммит проиндексированного снимка состояния в историю проекта. Эта процедура в сочетании с командой git add
определяет классический рабочий процесс для всех пользователей Git.
Все, что вы делали до этого момента, происходило в локальной системе. Для репозитория в Bitbucket эти изменения остаются невидимыми, пока вы не отправите их в удаленный репозиторий Bitbucket.
- Подробнее о Git и удаленных репозиториях
- Способность Git обмениваться данными с удаленными репозиториями (в нашем случае — с Bitbucket) является основой любого процесса совместной работы в Git.
- Модель совместной работы в Git предполагает, что каждый разработчик использует собственную копию репозитория со своей локальной историей и структурой веток. Обычно пользователи делятся не отдельными наборами изменений, а сериями коммитов. Вместо того чтобы выполнять коммит одного набора изменений из рабочей копии в центральный репозиторий, Git позволяет передавать между репозиториями целые ветки.
- Вы можете управлять подключениями к другим репозиториям и публиковать локальную историю, отправляя ветки в другие репозитории. Вы можете видеть результаты работы других участников, извлекая ветки в локальный репозиторий.
7. Вернитесь в окно локального терминала и отправьте в Bitbucket изменения, для которых был сделан коммит, с помощью команды git push origin main
. Эта команда указывает, что вы отправляете изменения в ветку main репозитория origin (на сервере Bitbucket).
В ответ вы должны получить что-то подобное:
$ git push origin main
Counting objects: 3, done.
Writing objects: 100% (3/3), 253 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0) To https://emmap1@bitbucket.org/emmap1/bitbucketstationlocations.git
* [new branch] main -> main
Branch main set up to track remote branch main from origin.
Ваши коммиты переданы в удаленный репозиторий (origin).
8. Перейдите в репозиторий BitbucketStationLocations в Bitbucket.
9. Нажав Commits (Коммиты) на боковой панели, вы заметите в своем репозитории единственный коммит. Bitbucket объединяет все выполненные вами действия в один коммит и отображает его. Обратите внимание, что в столбце Author (Автор) указано значение, которое использовалось при настройке глобального файла конфигурации Git ( ~/.gitconfig)
.
Нажав Source (Исходный код) на боковой панели, вы заметите, что в репозитории находится единственный файл исходного кода locations.txt
, который вы только что добавили.
![Исходный код коммита Git в Bitbucket](https://wac-cdn.atlassian.com/dam/jcr:2e8d96aa-6d0e-4670-9d58-50c0251c4bea/git_commits_source.gif?cdnVersion=2022)
Помните, как выглядел репозиторий сразу после создания? Сейчас он должен выглядеть немного иначе.
Получение изменений из репозитория Git в Bitbucket Cloud
Далее вам как администратору космических станций понадобится файл с дополнительной информацией об их местоположении. Поскольку на данный момент у вас не так много данных о местоположении, их можно добавить прямо из Bitbucket.
Шаг 1. Создайте файл в Bitbucket
Чтобы добавить новый файл с данными о местоположении, выполните следующие действия.
1. Нажмите Source (Исходный код) в репозитории BitbucketStationLocations, чтобы открыть каталог с исходным кодом. Обратите внимание, что только один файл, locations.txt
, находится в каталоге.
![Экран BitbucketStationSupplies в Bitbucket](https://wac-cdn.atlassian.com/dam/jcr:5dbc892c-1a9e-4440-96ea-536541ea88d5/01%20git%20source%20page%20image%20kopiera.png?cdnVersion=2022)
A. Страница Source (Исходный код): нажмите ссылку, чтобы открыть эту страницу.
B. Выбор ветки: выберите ветку, которую хотите просмотреть.
C. Кнопка «Дополнительные действия»: нажмите, чтобы открыть меню с дополнительными вариантами действий, например Add file (Добавить файл).
D. Область файлов исходного кода: просмотр каталога файлов в Bitbucket.
2. На странице Source (Исходный код) нажмите кнопку «Дополнительные действия» в правом верхнем углу и выберите в меню Add file (Добавить файл). Кнопка «Дополнительные действия» появляется только после того, как в репозиторий был добавлен хотя бы один файл.
Откроется страница создания нового файла, как показано на следующем изображении.
![Создание файла в Bitbucket](https://wac-cdn.atlassian.com/dam/jcr:546c1f3b-03ac-446c-ab5b-50b836fdfb66/mer_new_file_st_git.png?cdnVersion=2022)
A. Ветка для нового файла: измените, если нужно добавить файл в другую ветку.
B. Область нового файла: добавьте сюда содержимое нового файла.
3. В поле filename (Имя файла) введите stationlocations
.
4. В списке Syntax mode (Режим синтаксиса) выберите HTML.
5. В текстовое поле добавьте следующий HTML-код:
<p>Bitbucket has the following space stations:</p>
<p>
<b>Earth's Moon</b><br>
Headquarters
</p>
6. Нажмите Commit (Сделать коммит). Появится поле Commit message (Комментарий к коммиту) с сообщением stationlocations created online with Bitbucket
(Файл stationlocations создан онлайн в Bitbucket).
7. Нажмите Commit (Сделать коммит) под полем с комментарием.
Теперь у вас в Bitbucket есть новый файл. Откроется страница со сведениями о коммите, где можно увидеть выполненное изменение.
![Страница со сведениями о коммите в Bitbucket](https://wac-cdn.atlassian.com/dam/jcr:582fb362-907c-42c4-9ac3-496eb1a0c1ae/02%20new_file_committed_git%20kopiera.png?cdnVersion=2022)
Чтобы просмотреть список сделанных на данный момент коммитов, нажмите Commits (Коммиты) на боковой панели.
Шаг 2. Получите изменения из удаленного репозитория
Теперь нужно скопировать этот новый файл в локальный репозиторий. Это довольная простая процедура, по сути обратная операции push, с помощью которой вы поместили файл locations.txt
в Bitbucket.
Скопировать файл в локальный репозиторий можно следующим образом:
1. Откройте окно терминала и перейдите на верхний уровень локального репозитория.
$ cd ~/repos/bitbucketstationlocations/
2. Введите команду git pull --all
, чтобы извлечь все изменения из Bitbucket. (В более сложных рабочих процессах с ветвлением извлечение и слияние всех изменений может быть неприменимо.) В ответ на запрос введите свой пароль Bitbucket. Окно терминала должно выглядеть примерно так:
$ git pull --all
Fetching origin
remote: Counting objects: 3, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From https://bitbucket.org/emmap1/bitbucketstationlocations
fe5a280..fcbeeb0 main -> origin/main
Updating fe5a280..fcbeeb0
Fast-forward
stationlocations | 5 ++++++++++++++
1 file changed, 5 insertions(+)
create mode 100644 stationlocations
Команда git pull
выполняет слияние файла из удаленного репозитория (Bitbucket) в локальный репозиторий одной командой.
3. Перейдите в папку репозитория в локальной системе. Там будет находиться только что добавленный файл.
Фантастика! Добавив два файла о местоположении космических станций, вы выполнили классический рабочий процесс в Git (клонирование, добавление, коммит, отправку и получение) между Bitbucket и локальной системой.
Использование команды git branch для слияния файла
Администратор космических станций имеет определенные обязанности. Иногда приходится ограничивать доступ к информации, особенно при добавлении на карту местоположения новых станций в солнечной системе. Освоив работу с ветками, вы сможете обновлять файлы и делиться информацией, когда будете к этому готовы.
Потенциал веток раскрывается в полной мере, когда вы работаете в команде. Вы можете работать над своей частью проекта из своей ветки, получать изменения из Bitbucket и выполнять слияние всех результатов своей работы, когда она будет готова, с главной веткой. В нашей документации подробно описано, для чего используются ветки.
Ветка представляет собой независимое направление разработки в репозитории. Ее можно рассматривать как новое сочетание рабочего каталога, раздела проиндексированных файлов и истории проекта. Создание новых веток автоматически начинается с главной ветки (main). В качестве наглядного примера на этой схеме показаны главная ветка и ветка с обновлением для исправления багов.
Шаг 1. Создание ветки и внесение изменения
Создайте ветку, в которую вы сможете добавлять планы для космической станции, еще не готовые к коммиту. Когда вы будете готовы сообщить об этих планах всем, можно будет выполнить слияние изменений в репозиторий Bitbucket и затем удалить ставшую ненужной ветку.
Важно понимать, что ветки — это просто указатели на коммиты. Когда вы создаете ветку, Git создает только новый указатель, а не новый набор файлов или папок. Перед началом работы ваш репозиторий выглядит так:
Создать ветку можно следующим образом:
1. В окне терминала перейдите на верхний уровень локального репозитория с помощью следующей команды:
cd ~/repos/bitbucketstationlocations/
2. В окне терминала создайте ветку.
$ git branch future-plans
Эта команда создает ветку, но не выполняет переключение на эту ветку, поэтому репозиторий выглядит примерно так:
История репозитория остается неизменной. Все, что вы получаете, — это новый указатель на текущую ветку. Чтобы начать работу с новой веткой, вы должны переключиться на ветку, которую хотите использовать.
3. Переключитесь на только что созданную ветку, чтобы начать ее использовать.
$ git checkout future-plans
Switched to branch 'future-plans'
Команда git checkout
часто используется вместе с git branch
. Поскольку ветка создается для работы над чем-то новым, после каждого создания новой ветки (командой git branch
) требуется переключиться на эту ветку (командой git checkout
), чтобы начать ее использовать. Когда вы переключитесь на новую ветку, рабочий процесс Git будет выглядеть примерно так:
4. Найдите в локальной системе папку bitbucketstationlocations
и откройте ее. Вы заметите, что в результате создания новой ветки в каталоге не появилось никаких дополнительных файлов или папок.
5. Откройте файл stationlocations
в текстовом редакторе.
6. Измените файл, добавив в него местоположение еще одной станции:
<p>Bitbucket has the following space stations:</p>
<p>
<b>Earth's Moon</b><br>
Headquarters
</p>
<p>
<b>Mars</b><br>
Recreation Department
</p>
7. Сохраните и закройте файл.
8. Введите в окне терминала команду git status
. У вас будет нечто подобное:
$ git status
On branch future-plans
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: stationlocations
no changes added to commit (use "git add" and/or "git commit -a")
Обратили внимание на строку On branch future-plans
? Если бы вы ввели команду git status
раньше, то вместо этой строки увидели бы строку branch main
, потому что тогда у вас была только одна ветка — main
. Прежде чем индексировать изменение или выполнять его коммит, всегда проверяйте эту строку, чтобы убедиться, что выбрана именно та ветка, в которую вы хотите добавить изменение.
9. Проиндексируйте файл.
$ git add stationlocations
10. В окне терминала введите команду git commit
, как показано ниже:
$ git commit stationlocations -m 'making a change in a branch'
[future-plans e3b7732] making a change in a branch
1 file changed, 4 insertions(+)
После этого последнего коммита репозиторий будет выглядеть примерно так:
Пора выполнить слияние изменения с веткой main
.
Шаг 2. Merge для ветки: ускоренное слияние
Число ваших космических станций растет. Пришло время для церемонии открытия станции на Марсе. Теперь, когда ваши планы на будущее начали воплощаться в жизнь, можно выполнить слияние ветки future-plans
с веткой main в локальной системе.
Поскольку вы создали только одну ветку и внесли одно изменение, используйте метод ускоренного слияния веток. Ускоренное слияние возможно, потому что последний коммит текущей ветки является прямым продолжением целевой ветки. В этом случае для объединения историй Git не выполняет полноценное слияние, а просто переносит указатель текущей ветки в конец целевой ветки. Объединение историй проходит успешно, поскольку все коммиты, доступные из целевой ветки, теперь доступны из текущей ветки.
Это распространенная модель работы с ветками, отведенными под решение краткосрочных задач с небольшими изменениями. При работе с объемными функциями она используется реже.
Ускоренное слияние можно выполнить следующим образом:
1. В окне терминала перейдите на верхний уровень локального репозитория.
$ cd ~/repos/bitbucketstationlocations/
2. Введите команду git status
, чтобы убедиться, что для всех изменений сделаны коммиты, и узнать, какая ветка выбрана.
$ git status
On branch future-plans
nothing to commit, working directory clean
3. Переключитесь на ветку main
.
$ git checkout main
Switched to branch 'main'
Your branch is up-to-date with 'origin/main'.
4. Выполните слияние изменений из ветки future-plans
с веткой
. Это будет выглядеть примерно так:main
$ git merge future-plans
Updating fcbeeb0..e3b7732
Fast-forward
stationlocations | 4 ++++
1 file changed, 4 insertions(+)
По сути, вы переместили указатель ветки main
вперед, к текущему указателю HEAD, и репозиторий выглядит как после ускоренного слияния, описанного выше.
5. Поскольку вы больше не планируете использовать ветку future-plans
, ее можно удалить.
$ git branch -d future-plans
Deleted branch future-plans (was e3b7732).
После удаления ветки future-plans
вы сможете получить к ней доступ из ветки main
через идентификатор коммита. Если, например, вы хотите отменить изменения, добавленные из ветки future-plans
, воспользуйтесь полученным идентификатором коммита для возврата к этой ветке.
6. Введите команду git status
, чтобы увидеть результаты слияния. Они показывают, что локальный репозиторий опережает удаленный на один коммит. Это будет выглядеть примерно так:
$ git status
On branch main
Your branch is ahead of 'origin/main' by 1 commit.
(use "git push" to publish your local commits)
nothing to commit, working directory clean
Вот что вы сделали на данный момент:
- Создали ветку и переключились на нее
- Внесли изменение в новую ветку
- Сделали коммит изменения в новой ветке
- Интегрировали изменение в основную ветку
- Удалили ветку, ставшую ненужной
Теперь нужно поместить всю эту работу в Bitbucket, в удаленный репозиторий.
Шаг 3. Отправьте изменения в Bitbucket
Вы хотите, чтобы все могли видеть местоположение новой космической станции. Для этого нужно передать текущее состояние локального репозитория в Bitbucket.
На схеме показано, что происходит, когда локальный репозиторий содержит изменения, которых нет в центральном репозитории, и вы отправляете эти изменения в Bitbucket.
Вот как можно отправить изменение в удаленный репозиторий:
1. Находясь в каталоге репозитория, введите в окне терминала команду git push origin main
, чтобы отправить изменения. Результат будет выглядеть примерно так:
$ git push origin main
Counting objects: 3, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 401 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://emmap1@bitbucket.org/emmap1/bitbucketstationlocations.git
fcbeeb0..e3b7732 main -> main
2. Перейдите на страницу Overview (Обзор) своего репозитория Bitbucket. В ленте Recent Activity (Недавняя активность) будет отображаться операция push.
3. Нажмите Commits (Коммиты). Вы заметите коммит, сделанный в локальной системе. Обратите внимание: изменение имеет тот же идентификатор коммита, что и в локальной системе.
![Лента недавних коммитов в Bitbucket](https://wac-cdn.atlassian.com/dam/jcr:284b516b-cede-44bf-9807-85b5be9009cd/08.png?cdnVersion=2022)
Также видно, что линия слева от списка коммитов является прямой и не имеет веток. Это связано с тем, что ветка future-plans
никогда не взаимодействовала с удаленным репозиторием. Туда передавалось только созданное изменение после коммита.
4. Нажмите Branches (Ветки) и обратите внимание, что на этой странице также нет записи об этой ветке.
5. Нажмите Source (Исходный код), затем выберите файл stationlocations
. Вы заметите, что последнее изменение файла имеет тот же идентификатор коммита, что и отправленное.
6. Нажмите список истории файла, чтобы просмотреть изменения этого файла, отправленные в виде коммитов. Она будет выглядеть примерно как на следующем изображении.
![Список истории файла в Bitbucket](https://wac-cdn.atlassian.com/dam/jcr:a09d2ccd-3c2b-4941-9beb-38b7565e11ad/history_after_push_git.png?cdnVersion=2022)
Готово!
Не уверены, что сможете запомнить все только что выученные команды Git? Ничего страшного. Добавьте страницу Основные команды Git в закладки и обращайтесь к ней при необходимости.
Поделитесь этой статьей
Следующая тема
Рекомендуемые статьи
Добавьте эти ресурсы в закладки, чтобы изучить типы команд DevOps или получать регулярные обновления по DevOps в Atlassian.
![Люди сотрудничают друг с другом, используя стену со множеством инструментов](https://wac-cdn.atlassian.com/dam/jcr:2642fbab-a771-4961-9648-806c2fff25e5/bitbucket-blog-resized.png?cdnVersion=2022)
Блог Bitbucket
![Рисунок: DevOps](https://wac-cdn.atlassian.com/dam/jcr:d1f1a28b-11fc-4e22-b6c8-d47832b39d53/devops-learning-path-resized.png?cdnVersion=2022)
Образовательные программы DevOps
![Демонстрация функций в демо-зале с участием экспертов Atlassian](https://wac-cdn.atlassian.com/dam/jcr:73c6bd92-448f-4ae7-a6c1-5f4695f78692/demo-den-resized.png?cdnVersion=2022)