How To Use Git

From Genome Analysis Wiki
Jump to navigationJump to search

Learning Git

Presentations

If you want to use a GUI, one option is: SmartGit GUI

Practical

Using Git Example

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


Git FAQs