### What is git <a name="user-content-WhatIsGit"></a>
`Git` is a repository management system and can be explained as a google drive folder shared to everyone added to it.\
But this drive folder is special because this folder can save your old changes additions and deletions of your files.\
Lets say you added a image long ago that you think isnt needed anymore and decide to delete it.\
But The whole program breaks and you nead that file back, so instead of remaking or finding it again you can yust use the special feature of git that allows you to undo the deletion and go back to before it happened.\
This is one strength but not the only one that Git has and there is one more i want to explain.\
So lets say that you are a big team of programmers that are working on a project but how would you go about getting the new code to work with the old.\
That is were Git's feature called branches come in they are basicaly a copy of the main folder branches of with some new code like maby you make a script that handles the main menu.\
And when that code is done you can do a `merge/pull request` and turn the branch around so that it connects back to the main project again.
So first i will explain what these are and then i will show you how.\
Commiting is the time that you say to git that it should save your changes.\
This dose not upload it to the server yet it yust saves it localy so you can go back if you want to.\
Pulling and pushing are quite self explanatory they `download/upload``your/the Servers` changes.\
One extra thing here is Fetching.\
Fetching is not the same as pulling it sounds like it could be but its not.\
Fetching is when you ask the server if it has some changes or new branches that you could download.\
1. Commiting in Github Desktop is quite easy to do this all you have to do is open Github Desktop and write a small message about what you changed after the last commit.\
The box to write in says `Summary (Required)` and is located bottom left corner.\
If you want a longer message you can write it in the bigger box that says `Description`.\
When you are done you yust press the big blue button with the name `Commit to (BranchName)`.\
2. Pushing in Github Desktop may be the easiest one because you only nead to do it after a commit so after commiting you will see a a button on the top bar that usualy says fetch is now blue and says push. If you press that then all your changes that you commited will be sent to the server so others can pull it.
3. Fetching is also easy you yust press `Fetch Origin` on the top button bar.
4. Pull is on the same button as fetch and is the time that you download the changes from the server.