Skip to content

Developer Guide

Jian Wang edited this page Apr 29, 2018 · 8 revisions

Git Workflow

We apply fork based workflow for this project, which means all code contributors need to commit change to their own forked repo first, and then initiate a pull request.

Pull Request

Github provides three kinds of pull request, which are:

  • Allow merge commits - Add all commits from the head branch to the base branch with a merge commit.
  • Allow squash merging - Combine all commits from the head branch into a single commit in the base branch.
  • Allow rebase merging - Add all commits from the head branch onto the base branch individually.

For this project, we are applying the last option rebase merge. The main reason is to make the commit history more clean and tidy.

Sync with Central Repo

We assume working on master branch.

  1. add remote for your local repo
    git remote add origin git@github.com:elan2wang/Scorpio.git
    git remote add upstream git@github.com:ScorpionQuant/Scorpio.git
  2. commit change to local repo
    git add [files]
    git commit -m "commit message"
    git push origin master
  3. initiate pull request via Github, once merged
    git pull --rebase upstream master
  4. sync forked repo with central repo
    git push origin master -f

Clone this wiki locally