Content:
- Getting a Git Repository 1.1 How to get a Git repository
- Recording Changes to the Repository 2.1 Recording Changes to the Repository
- Viewing the Commit History 3.1 Viewing the Commit History
- Working with Remotes 4.1 Working with Remotes
- Branching
- Rewriting History
- Configuration
1.2 Initializing a Repository in an Existing Directory
1.3 Cloning an Existing Repository
2.2 Checking the Status of Your Files
2.3 Adding a new file to your projecty
2.4 Tracking New Files
2.5 Staging Modified Files
2.6 Ignoring Files
2.7 Viewing Your Staged and Unstaged Changes
2.8 Committing Your Changes
2.9 Removing Files
2.10 Moving Files
4.2 Showing Your Remotes
4.3 Adding Remote Repositories
4.4 Fetching and Pulling from Your Remotes
4.5 Pushing to Your Remotes
4.6 Inspecting a Remote
4.7 Renaming and Removing Remotes
0 Getting Started
Git differs from other VCS in that it makes snapshots not differences
Git stores and thinks about information in a very different way than other VCSs.
- Other version control systems store informations as a set of base files and the changes made to each file over time, this is commonly described as delta-based version control. Instead, Git stores the data as series of snapshots of a filesystem.
- To store the state of the your project, Git makes a copy, or snapshot, all the files of the project and save them. To be more efficient, if a file has not changed, Git doesn’t store the file again but a link to the already saved file in a previous snapshot.
- This is an important distinction between Git and all other VCSs, that makes Git more like a mini filesystem. This have many benefits when branching a Git project.

