Forking from GitHub to Bitbucket

后端 未结 6 1534
渐次进展
渐次进展 2020-12-22 14:32

I\'m working on a project based on CakePHP, that\'s hosted on GitHub. My project is being hosted on Bitbucket

6条回答
  •  抹茶落季
    2020-12-22 15:22

    The workflow below adds the github repository as a a new remote called sync and the bitbucket remote as origin. It also adds a branch called github to track the github repository and a branch called master to track the bitbucket repository. It assumes you have a bitbucket repository called "myrepository" which is empty.

    Setup remotes

    # 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
    

    Setup branches

    # 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
    

    Now you should have the local github branch tracking the github repo's master branch. And you should have the local master branch tracking the bitbucket repo (master branch by default).

    This makes it easy to do a pull on the github branch, then merge those changes onto the master branch (rebase preferred over merge though) and then you can push the master branch (will push it to bitbucket).

提交回复
热议问题