Written by Daniel Herber.
- [What Is GitHub, and What Is It Used For?](https://www.howtogeek.com/180167/htg-explains-what-is-github-and-what-do-geeks-use-it-for/)
- [What is Git](https://www.atlassian.com/git/tutorials/what-is-git)
- [Git Overview](https://git-scm.com/about/branching-and-merging)
### Installation Steps ###
#### Create an Account ####
Since Git is a distributed revision control system, you need a central location for your project. This typically means creating an account for one of the many Git services.
- **Recommended**: [GitHub](https://github.com/join)
- Get the Student Developer Pack and obtain unlimited private repositories [(link)](https://education.github.com/pack).
- Can be used for sharing code through Matlab Central [(link)](https://www.mathworks.com/matlabcentral/about/fx/#Why_GitHub).
- Alternative: [BitBucket](https://bitbucket.org/account/signup/)
- Unlimited private repositories on any account.
- Cannot be used with Matlab Central.
#### Install the Required Software ####
1. Install a GUI-based Git client
- These tools allow you to make changes to your Git project without having to use the command line interface. Both options are available for Windows and Mac.
- **Recommended**: [Sourcetree](https://www.sourcetreeapp.com)
- Alternatively ```choco install sourcetree``` using [chocolatey](https://chocolatey.org/).
- Alternative: [GitHub Desktop](https://desktop.github.com/)
- Alternatively ```choco install github``` using [chocolatey](https://chocolatey.org/).
2. Install command line tools
- **Recommended**: [Git for Windows](https://git-scm.com/download/win) (64-bit)
- Alternatively ```choco install git.install``` using [chocolatey](https://chocolatey.org/).
#### Update PATH Variable ####
If you are unsure what the `PATH` variable is in windows or how to change it, see the following [video](https://www.youtube.com/watch?v=W9pg2FHeoq8). The goal is to not receive the error `...is not recognized as an internal or external command...` in the Command Prompt for each of the steps.
1. Ensure that Git is in your path
- Run the command `git` in the Command Prompt and see if it is recognized
- If it isn't add the main folder for `Git\bin` to your path
- Typically is something like `C:\Program Files\Git\bin`
### Additional Tips and Tricks ###
- Some example repositories:
- [danielrherber/pm-architectures-project](https://github.com/danielrherber/pm-architectures-project) (my currently most developed GitHub project)
- [Getting started with SourceTree, Git and git flow](https://github.com/GSoft-SharePoint/Dynamite/wiki/Getting-started-with-SourceTree,-Git-and-git-flow)
- [Pro Git book](https://git-scm.com/book/en/v2)
- Sublime Text 3 integration is possible.
- Install the following packages:
- [Git](https://github.com/kemayo/sublime-text-git) provides Git integration
- [GitGutter](https://github.com/jisaacks/GitGutter) shows an icon in the gutter area indicating whether a line has been inserted, modified or deleted
- Additional information:
- [Using Git Inside of Sublime Text to Improve Workflow](https://scotch.io/tutorials/using-git-inside-of-sublime-text-to-improve-workflow)
- Matlab integration is built-in after R2014b.
- [MATLAB and Git](http://blogs.mathworks.com/community/2014/10/20/matlab-and-git/)
- [Set Up Git Source Control](https://www.mathworks.com/help/matlab/matlab_prog/set-up-git-source-control.html)
- [Clone from Git Repository](https://www.mathworks.com/help/matlab/matlab_prog/retrieve-from-git-repository.html)