Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. On your local clone, checkout the master branch and ensure it is up to date with upstream
    master> git checkout master
    master> git pull upstream master && git push origin master

     

  2. Depending on some settings on your local system, you may also have to fetch upstream to get a reference to the upstream 11.x branch (or any other upstream branches you don't have a reference to locally)
    master> git fetch upstream
    remote: Counting objects: 24, done.
    remote: Compressing objects: 100% (22/22), done.
    remote: Total 24 (delta 0), reused 24 (delta 0), pack-reused 0
    Unpacking objects: 100% (24/24), done.
    From github.com:sakaiproject/sakai
     * [new branch]      11.x       -> upstream/11.x

     

  3. Then, you checkout (create) the branch locally and set it up to push to origin, so you can stay in sync with the 11.x branch like you do with master
    master> git checkout 11.x
    Branch 11.x set up to track remote branch 11.x from upstream.
    Switched to a new branch '11.x'
    master> git push -u origin 11.x
    Counting objects: 1, done.
    Writing objects: 100% (1/1), 290 bytes | 0 bytes/s, done.
    Total 1 (delta 0), reused 0 (delta 0)
    To git@github.com:<yourGitHubAccount>/sakai.git
     * [new branch]      11.x -> 11.x
    Branch 11.x set up to track remote branch 11.x from origin.

     

  4. To update the 11.x branch from upstream, perform the following (like you would with master, just replacing the master branch name with the 11.x branch name, or any other branch name from upstream)
    master> git checkout 11.x
    master> git pull upstream 11.x && git push origin 11.x

     

  5. To create a local branch for development against only 11.x, you create a new branch as you would normally, but instead of being based on master (which is default), you want to base it on the 11.x branch:
    master> git checkout -b SAK-12345 11.x

     

  6. Once you have a local feature branch based on 11.x and you've done some development and committed your work, you'll want to push it to your origin so you can issue a Pull Request against the upstream 11.x branch
    master> git push -u origin SAK-12345

     

  7. Your 11.x specific feature is now ready for you to issue the Pull Request!
     

     

...