GitHub Terms and Common Commands - Eastside-Catholic/Tutorial GitHub Wiki
Common Commands that you can do from Eclipse##
These are where you will find these commmands
Commit
This is an individual change to file(s). It is like saving, but it creates a unique id that you attach a description to. This is good for keeping track of milestones that you may need to revert back to later. Commit your changes often, but not excessively. These changes are not uploaded to GitHub.com, and require a push to do so. For effective naming of commit messages, please see Commit Messages
Push
This takes all of the commits that you have and puts them on github. This allows others to see and interact with your commits and for you to be happy that your work is being showed off.
Commit and Push
This is an option from the commit page. You can either commit, which saves your updated file(s) locally, or you can choose commit and push. This option commits what you currently have saved and pushes this and your other commits up to github.com so that others can see it and interact with it.
Pull
This allows you to grab the most recent files up on github and pull them to your computer (This is also called Fetching, which you may do separately from a pull) and then the pull merges them with any currently existing files so you are up to date.
Switch To (Branch)
When you switch to a new branch, you are making a parallel copy of the repository that does not affect the current master copy. This is good so you can test out adding new features separately, then merge them into the main copy when you are confident that they work.
You can switch between existing branches that are in the project by using the switch button, going to other, like it is highlighted here:
Then, click on Remote Tracking to open up the other branches that you have pulled/fetched from github. You may select one of these and view it and edit it. However, problems may arise when you change it and commit and push changes while another person is working on it, so be aware that other people may be working on their branch.
Here is what was just described:
Merge
Merging is when you take a branch that has been split off of the main class and recombine it with the current master to update it with a new feature(s). If there are no conflicts, then this merge can be done automatically. If there are, start yelling and screaming for Andrew Sentman since I have not learned how to use command line to resolve conflicts yet.
Fork
Forking makes a copy of the entire repository that you will probably not merge into. This is also used if you want to just take a high profile user's entire repository as a whole then work in your own direction. In this class, you will probably be forking templates that may be created into your own repository, but for group projects, making [branches](https://github.com/Eastside-Catholic/Tutorial/wiki/GitHub-Terms-and-Common-Commands#switch-to branch) would probably be better.
You may fork from the button on github that says fork:
Still not finding an explanation for a term?
Check out this glossary.