How To Use Git
From Genome Analysis Wiki
Jump to navigationJump to searchLearning Git
Presentations
- Just the Basics
- Tags & Branches
- Needed for making changes without affecting others
- Useful for marking releases
If you want to use a GUI, one option is: SmartGit GUI
Practical
Cheat Sheet
GitHub
We use GitHub to host our software repositories - take a look at a brief overview
Git Terms
- Repository - holds files and their history
- Bare repository - no visible files, just the database that holds the stored information
- Clone - copy a repository
- Local/working - the directory/repository where you make your changes/work in
- Remote/source - the repository that your local/working repository was cloned from/where you send your completed changes.
- Commit - a version/revision of your repository or the act of creating a version/revision
- on a commit, changes are only stored in the local/working repository
- Pull - update your local/working repository with any changes that have been made to the remote/source (you do not automatically see the changes)
- Push - update the remote/source with changes that you have made in your local/working repository
- Branch - alternate paths of work that allows you to commit/push/pull without affecting the other paths
- Master - the main/default branch
- Merge - bring in changes from another branch
Some common global setup
- global setup options are stored in ~/.gitconfig
- each repository may have additional config options
- source for the following options is here
- git config --global user.name "Your Name Comes Here"
- git config --global user.email you@yourdomain.example.com
- git config --global color.diff auto
- git config --global color.status auto
- git config --global color.branch auto