Le flux de travail ci-dessous ajoute le dépôt github en tant que nouveau dépôt distant appelé sync
et la télécommande bitbucket comme origin
. Il ajoute également une branche appelée github
pour suivre le dépôt github et une branche appelée master
pour suivre le dépôt bitbucket. Il suppose que vous avez un dépôt bitbucket appelé "myrepository" qui est vide.
Configurer les télécommandes
# 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
Branches d'installation
# 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
Maintenant vous devriez avoir le local github
qui suit la branche du repo github. master
branche. Et vous devriez avoir le local master
suivi de la branche du repo bitbucket ( master
par défaut).
Cela permet d'effectuer facilement une traction sur le fichier github
puis fusionner ces changements sur la branche master
(la rebase est préférable à la fusion), puis vous pouvez pousser la branche master
branche (qui sera poussée sur bitbucket).
5 votes
Ver stackoverflow.com/questions/1811730/ pour une bonne approche de ce type de flux de travail.