Introduction
Use Git version control software to manage project code
()
1. What Is Git?
About version control
()
History
()
Distributed version control
()
2. Install Git
Installation
()
Configuration
()
Git help
()
3. Getting Started
Initialize a repository
()
Your first commit
()
Write commit message
()
View commits
()
The three trees
()
Hash values (SHA-1)
()
4. Make Changes to Files
Add files
()
Edit files
()
Review file changes
()
Delete files
()
Move and rename files
()
5. Use Git with an Existing Project
Introducing the project
()
Make and review file edits
()
Add, delete, and rename files
()
Compare commits
()
Make atomic commits
()
Challenge: Client edits
()
Solution: Client edits
()
6. Undo Changes
Restore changes to previous version
()
Restore other versions
()
Amend commits
()
Revert commits
()
Remove untracked files
()
7. Ignore Files
Ignore files in a project
()
Ideas on what to ignore
()
Globally ignore files
()
Track empty directories
()
8. Navigating the Commit Tree
Referencing commits
()
The HEAD pointer
()
Ancestry
()
Filter the commit long
()
Format the commit log
()
9. Branching
Branches overview
()
Create branches
()
Switch branches
()
Switch branches with uncommitted changes
()
Compare branches
()
Rename branches
()
Delete branches
()
Configure command prompt
()
10. Merging
Merging branches
()
Fast-forward merge vs. real merge
()
Merge conflicts
()
Resolve merge conflicts
()
Strategies to reduce conflicts
()
Challenge: Branching and merging
()
Solution: Branching and merging
()
11. Reset Branches
Reset types
()
Soft reset
()
Mixed reset
()
Hard reset
()
12. Stash Changes
Save changes in the stash
()
View stashed changes
()
Retrieve stashed changes
()
Delete stashed changes
()
13. Set Up a Remote
Local and remote repositories
()
Set up a GitHub account
()
Configure GitHub credentials
()
Add a remote repository
()
Create a remote branch
()
Clone a remote repository
()
Remote-tracking branches
()
14. Collaborate with a Remote
Working with a remote
()
Push changes to a remote
()
Fetch changes from a remote
()
Merge in fetched changes
()
Work with new remote branches
()
Push to an updated remote branch
()
Delete a remote branch
()
Prune stale branches
()
Collaboration workflow
()
Collaborating on open-source projects
()
15. Tagging
Create and delete tags
()
List tags
()
Push tags to a remote
()
16. Interactive Staging
About interactive staging
()
Interactive commands
()
Patch mode
()
Split a hunk
()
Edit a hunk
()
17. Share Select Changes
Cherry-picking commits
()
Resolve cherry-picking conflicts
()
Create diff patches
()
Apply diff patches
()
Create formatted patches
()
Apply formatted patches
()
18. Rebasing
Rebase commits
()
Perform a rebase
()
Merging vs. rebasing
()
Interactive rebasing
()
Squash commits
()
Pull rebase
()
19. Track Down Problems
Blame
()
Bisect
()
Challenge: Track down problems
()
Solution: Track down problems
()
Ex_Files_Complete_Guide_to_Git.zip
(434.0 MB)