git and github
version control, source code configuration and project collaboration tools
The software package known as git is an open source version control system.
A git repository is a collection of files (a directory tree) for a software project, along with the entire version history of those files over time.
The commerical company github provides web-based software and cloud-based hosting for git repositories.
- github.com is the main site for github services
The article git: overview explains more. In addition there are several other articles about git/github listed below.
Quick Tips
- Short Cut Keys
- Did you know that when browsing files in github.com, you can type a ? and bring up a whole bunch of amazing short cut keys?
- For example T is “fuzzy file search”. Have fun exploring all the rest.
- Code Navigation: https://help.github.com/en/github/managing-files-in-a-repository/navigating-code-on-github
Windows
If you find that when you type git status
you see every single file is modified, it might be because of line endings.
Type git config --global core.autocrlf true
to fix it
Resources
Related topics:
- git: basic workflow—The basics: git add..., git commit..., git push ...
- git: cloning your first repo—A guide for those new to git
- git: commit messages—How to write clear and helpful commit messages
- git: feature branch workflow—One branch per feature/issue/story
- git: git/github troubleshooting—Various problems and their solution
- git: .gitignore files—What they are for and what to put in them
- git: merge conflicts—Not nearly as scary as you may have been told
- git: overview—An introduction. git vs. github.com vs. github.ucsb.edu, repos, etc.
- git: throwaway untracked files—how to clean up untracked files easily
- github: adding collaborators—giving individual users access to a private repo
- github: api—Java Api for Github
- github: issues—working with issues in github
- github: keyboard shortcuts—making the github web UI easier to use
- github: pro tips—A few extras to help you work with GitHub more effectively
- github: using ssh keys—generating public/private key pair, uploading public key to github
- github: verified badge on commits—adding extra security to your commit messages