Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Title Page
Second Edition
Copyright
Git Essentials
Second Edition
Credits Foreword Foreword About the Author About the Reviewer www.PacktPub.com
Why subscribe?
Customer Feedback Preface
What this book covers What you need for this book Who this book is for Conventions Reader feedback Customer support
Downloading the color images of this book  Errata Piracy Questions
Getting Started with Git
Foreword to the second edition Installing Git
Installing Git on GNU-Linux Installing Git on macOS Installing Git on Windows
Running our first Git command
Making presentations Setting up a new repository Adding a file Committing the added file Modifying a committed file
Summary
Git Fundamentals - Working Locally
Digging into Git internals Git objects
Commits
The hash The author and the commit creation date The commit message The committer and the committing date Going deeper Porcelain commands and plumbing commands
Trees Blobs
Even deeper - the Git storage object model Git doesn't use deltas Wrapping up Git references
It's all about labels Branches are movable labels How references work
Creating a new branch HEAD, or you are here Reachability and undoing commits Detached HEAD The reflogs
Tags are fixed labels
Annotated tags
Staging area, working tree, and HEAD commit
The three areas of Git Removing changes from the staging area File status lifecycle All you need to know about checkout and reset
Git checkout overwrites all the tree areas Git reset can be hard, soft, or mixed
Rebasing
Reassembling commits Rebasing branches
Merging branches
Fast forwarding
Cherry picking Summary
Git Fundamentals - Working Remotely
Working with remotes
Clone a local repository
The origin Sharing local commits with git push Getting remote commits with git pull How Git keeps track of remotes
Working with a public server on GitHub
Setting up a new GitHub account Cloning the repository Uploading modifications to remotes
What do I send to the remote when I push? Pushing a new branch to the remote
The origin
Tracking branches
Going backward – publishing a local repository to GitHub
Adding a remote to a local repository Pushing a local branch to a remote repository
Social coding - collaborating using GitHub
Forking a repository Submitting pull requests Creating a pull request
Summary
Git Fundamentals - Niche Concepts, Configurations, and Commands
Dissecting Git configuration
Configuration architecture
Configuration levels
System level Global level Repository level
Listing configurations Editing configuration files manually Setting up some other environment configurations
Basic configurations Typos autocorrection Push default Defining the default editor Other configurations
Git aliases
Shortcuts to common commands Creating commands
git unstage git undo git last git difflast
Advanced aliases with external commands Removing an alias Aliasing the git command itself
Useful techniques
Git stash - putting changes temporally aside Git commit amend - modify the last commit Git blame - tracing changes in a file
Tricks
Bare repositories
Converting a regular repository to a bare one
Backup repositories
Archiving the repository Bundling the repository
Summary
Obtaining the Most - Good Commits and Workflows
The art of committing
Building the right commit
Making only one change per commit
Splitting up features and tasks Writing commit messages before starting to code
Including the whole change in one commit Describing the change, not what have you done Don't be afraid to commit Isolating meaningless commits The perfect commit message
Writing a meaningful subject Adding bulleted details lines when needed Tying other useful information Special messages for releases Conclusions
Adopting a workflow - a wise act
Centralized workflows
How they work
Feature branch workflow Gitflow
Master branch Hotfixes branches The develop branch The release branch The feature branches Conclusion
GitHub flow
Anything in the master branch is deployable Creating descriptive branches off of master Pushing to named branches constantly Opening a pull request at any time Merging only after pull request review Deploying immediately after review Conclusions
Trunk-based development Other workflows
Linux kernel workflow
Summary
Migrating to Git
Before starting
Installing a Subversion client
Working on a Subversion repository using Git
Creating a local Subversion repository
Checking out the Subversion repository with the svn client
Cloning a Subversion repository from Git
Adding a tag and a branch Committing a file to Subversion using Git as a client Retrieving new commits from the Subversion server
Using Git with a Subversion repository Migrating a Subversion repository
Retrieving the list of Subversion users Cloning the Subversion repository
Preserving ignored files Pushing to a local bare Git repository Arrange branches and tags Renaming trunk branch to master Converting Subversion tags to Git tags Pushing the local repository to a remote
Comparing Git and Subversion commands Summary
Git Resources
Git GUI clients
Windows
Git GUI TortoiseGit GitHub for Windows Atlassian SourceTree Cmder
macOS Linux
Building up a personal Git server with web interface
SCM Manager
Learning Git in a visual manner Git on the internet
Git for human beings Google Group Git community on Google+ Git cheat sheets Git Minutes and Thomas Ferris Nicolaisen blog Online videos Ferdinando Santacroce's blog
Summary
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion