Setting up Git / Github, a step you might easily skip
Most new members have their Github and git properly setup when they join Blueprint, since it is a must starting from CS 61B. If not, please let your PL or your VP of Tech know.
It is recommended that you set up your git config to help identifying your commits. Specifically, please run:
$ git config --global user.name "John Doe"
$ git config --global user.email [email protected]
You can refer to the guide at https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup
Branching in Git
Just like other projects of similar complexity, Blueprint projects make heavy use of Git branching. Branches in Git are a way that commits are organized, and since we have different developers working simutaneously on different features, branching allows us to organize changes and properly review them.
Here is a basic guide to git branching: https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging
Merge conflicts, git fetch / rebase all come with branching. A typical list of commands you might need to use include:
git branch
git checkout
git merge
git fetch
git rebase
git cherry-pick
It will be nice if you have handled merge conflict in the past. If you know how to avoid them at the first place, even better!
Don't panic if you have no experience with merge conflicts yet! You can always search for usage of specific commands. This curriculum is deisgned so that you will necessarily face a git merge conflict, in a situation similar to real world development!
Pull requests
We use Pull Requests, a function provided by Github, to promote code review and improve code quality. No worries, you will get to know this easy tool from your PL very soon.