-
Day 1
- Summary of git internals
- Standard git workflow
- Forking and cloning repos
- Branching and adding upstream repos
- Making pull-requests
- Reviewing and merging a pull-request
-
Day 2
- Benefits of prototyping
- Project management and Agile
- Basics of good testing
- The structure of tests (Given, When, Then)
- Essentials of PyTest
- Continuous Integration with Travis CI
-
Day 3 & 4
- Contributing to Numpy
-
Day 5
- Planning and preparation for the semester project
- Requested tutorials
- how to start a repo from scratch?
git initlocal method- on GitHub
git cloneand eithergit push --forceorgit pullmethods
- how to revert mistakes?
git revertvs. …git resetvs. …git reset --hard
- how to go to a specific point in history?
git checkout SHA⟶DETACHED HEADproblem- interaction with branches
git gui: building commits along the way interactively (for the mess around type of workflows)
- remotes:
pull,push,fetch,merge - GitHub: forks, branches and PRs
- strategies for keeping your fork up-to-date:
rebaseormerge - a more thorough and deailed explanation can be found on the Numpy Contributor's Guide. This guide can be adapted to your own needs, see gitwash.