Приведенный ниже рабочий процесс добавляет репозиторий github в качестве нового пульта с именем sync
, а битбакета - как origin
. Он также добавляет ветку с именем github
для отслеживания репозитория github и ветку с именем master
для отслеживания репозитория bitbucket. Предполагается, что у вас есть хранилище bitbucket с именем «myrepository», которое пусто.
Настройка пультов
# setup local repo
mkdir myrepository
cd myrepository
git init
# add bitbucket remote as "origin"
git remote add origin ssh://git@bitbucket.org/aleemb/myrepository.git
# add github remote as "sync"
git remote add sync https://github.com/aleemb/laravel.git
# verify remotes
git remote -v
# should show fetch/push for "origin" and "sync" remotes
Настройка веток
# first pull from github using the "sync" remote
git pull sync
# setup local "github" branch to track "sync" remote's "master" branch
git branch --track github sync/master
# switch to the new branch
git checkout github
# create new master branched out of github branch
git checkout -b master
# push local "master" branch to "origin" remote (bitbucket)
git push -u origin master
Теперь у вас должна быть локальная ветка github
, отслеживающая ветку master
репозитория github. И у вас должна быть локальная ветка master
, отслеживающая репозиторий Bitbucket (по умолчанию ветка master
).
Это облегчает выполнение ветки github
, затем объединяет эти изменения с веткой master
(хотя перебазирование предпочтительнее слияния), а затем вы можете нажать ветку master
(подтолкнет ее к Bitbucket).