Pro Git.

By: Chacon, ScottContributor(s): Straub, BenMaterial type: TextTextPublisher: Berkeley, CA : Apress L. P., 2014Copyright date: �2014Edition: 2nd edDescription: 1 online resource (441 pages)Content type: text Media type: computer Carrier type: online resourceISBN: 9781484200766Genre/Form: Electronic books.Additional physical formats: Print version:: Pro GitLOC classification: QA76.76.O62Online resources: Click to View
Contents:
Intro -- Contents at a Glance -- Contents -- About the Authors -- Preface by Scott Chacon -- Preface by Ben Straub -- Chapter 1: Getting Started -- About Version Control -- Local Version Control Systems -- Centralized Version Control Systems -- Distributed Version Control Systems -- A Short History of Git -- Git Basics -- Snapshots, Not Differences -- Nearly Every Operation Is Local -- Git Has Integrity -- Git Generally Only Adds Data -- The Three States -- The Command Line -- Installing Git -- Installing on Linux -- Installing on Mac -- Installing on Windows -- First-Time Git Setup -- Your Identity -- Your Editor -- Checking Your Settings -- Getting Help -- Summary -- Chapter 2: Git Basics -- Getting a Git Repository -- Initializing a Repository in an Existing Directory -- Cloning an Existing Repository -- Recording Changes to the Repository -- Checking the Status of Your Files -- Tracking New Files -- Staging Modified Files -- Short Status -- Ignoring Files -- Viewing Your Staged and Unstaged Changes -- Committing Your Changes -- Skipping the Staging Area -- Removing Files -- Moving Files -- Viewing the Commit History -- Limiting Log Output -- Undoing Things -- Unstaging a Staged File -- Unmodifying a Modified File -- Working with Remotes -- Showing Your Remotes -- Adding Remote Repositories -- Fetching and Pulling from Your Remotes -- Pushing to Your Remotes -- Inspecting a Remote -- Removing and Renaming Remotes -- Tagging -- Listing Your Tags -- Creating Tags -- Annotated Tags -- Lightweight Tags -- Tagging Later -- Sharing Tags -- Git Aliases -- Summary -- Chapter 3: Git Branching -- Branching in a Nutshell -- Creating a New Branch -- Switching Branches -- Basic Branching and Merging -- Basic Branching -- Basic Merging -- Basic Merge Conflicts -- Branch Management -- Branching Workflows -- Long-Running Branches -- Topic Branches.
Remote Branches -- Pushing -- Tracking Branches -- Pulling -- Deleting Remote Branches -- Rebasing -- The Basic Rebase -- More Interesting Rebases -- The Perils of Rebasing -- Rebase When You Rebase -- Rebase vs. Merge -- Summary -- Chapter 4: Git on the Server -- The Protocols -- Local Protocol -- The Pros -- The Cons -- The HTTP Protocols -- Smart HTTP -- Dumb HTTP -- The Pros -- The Cons -- The SSH Protocol -- The Pros -- The Cons -- The Git Protocol -- The Pros -- The Cons -- Getting Git on a Server -- Putting the Bare Repository on a Server -- Small Setups -- SSH Access -- Generating Your SSH Public Key -- Setting Up the Server -- Git Daemon -- Smart HTTP -- GitWeb -- GitLab -- Installation -- Administration -- Users -- Groups -- Projects -- Hooks -- Basic Usage -- Working Together -- Third Party Hosted Options -- Summary -- Chapter 5: Distributed Git -- Distributed Workflows -- Centralized Workflow -- Integration-Manager Workflow -- Dictator and Lieutenants Workflow -- Workf lows Summary -- Contributing to a Project -- Commit Guidelines -- Private Small Team -- Private Managed Team -- Public Project, Fork -- Public Project, E-Mail -- Summary -- Maintaining a Project -- Working in Topic Branches -- Applying Patches from E-mail -- Applying a Patch with apply -- Applying a Patch with am -- Checking Out Remote Branches -- Determining What Is Introduced -- Integrating Contributed Work -- Merging Workflows -- Large-Merging Workflows -- Rebasing and Cherry Picking Workflows -- Rerere -- Tagging Your Releases -- Generating a Build Number -- Preparing a Release -- The Shortlog -- Summary -- Chapter 6: Github -- Account Setup and Configuration -- SSH Access -- Your Avatar -- Your Email Addresses -- Two-Factor Authentication -- Contributing to a Project -- Forking Projects -- The GitHub Flow -- Creating a Pull Request -- Iterating on a Pull Request.
Advanced Pull Requests -- Pull Requests as Patches -- Keeping up with Upstream -- References -- Markdown -- GitHub Flavored Markdown -- Task Lists -- Code Snippets -- Quoting -- Emoji -- Images -- Maintaining a Project -- Creating a New Repository -- Adding Collaborators -- Managing Pull Requests -- Email Notifications -- Collaborating on the Pull Request -- Pull Request Refs -- Pull Requests on Pull Requests -- Mentions and Notifications -- The Notifications Page -- Web Notifications -- Email Notifications -- Special Files -- README -- CONTRIBUTING -- Project Administration -- Changing the Default Branch -- Transferring a Project -- Managing an Organization -- Organization Basics -- Teams -- Audit Log -- Scripting GitHub -- Hooks -- Services -- Hooks -- The GitHub API -- Basic Usage -- Commenting on an Issue -- Changing the Status of a Pull Request -- Octokit -- Summary -- Chapter 7: Git Tools -- Revision Selection -- Single Revisions -- Short SHA -- Branch References -- Ref Log Shortnames -- Ancestry References -- Commit Ranges -- Double Dot -- Multiple Points -- Triple Dot -- Interactive Staging -- Staging and Unstaging Files -- Staging Patches -- Stashing and Cleaning -- Stashing Your Work -- Creative Stashing -- Unapplying a Stash -- Creating a Branch from a Stash -- Cleaning Your Working Directory -- Signing Your Work -- GPG Introduction -- Signing Tags -- Verifying Tags -- Signing Commits -- Everyone Must Sign -- Searching -- Git Grep -- Git Log Searching -- Line Log Search -- Rewriting History -- Changing the Last Commit -- Changing Multiple Commit Messages -- Reordering Commits -- Squashing a Commit -- Splitting a Commit -- The Nuclear Option: filter-branch -- Removing a File from Every Commit -- Making a Subdirectory the New Root -- Changing E-Mail Addresses Globally -- Reset Demystified -- The Three Trees -- The HEAD -- The Index.
The Working Directory -- The Workflow -- The Role of Reset -- Step 1: Move HEAD -- Step 2: Updating the Index (--mixed) -- Step 3: Updating the Working Directory (--hard) -- Recap -- Reset with a Path -- Squashing -- Check It Out -- Without Paths -- With Paths -- Summary -- Advanced Merging -- Merge Conflicts -- Aborting a Merge -- Ignoring Whitespace -- Manual File Re-merging -- Checking Out Conflicts -- Merge Log -- Combined Diff Format -- Undoing Merges -- Fix the References -- Reverse the Commit -- Other Types of Merges -- Our or Theirs Preference -- Subtree Merging -- Rerere -- Debugging with Git -- File Annotation -- Binary Search -- Submodules -- Starting with Submodules -- Cloning a Project with Submodules -- Working on a Project with Submodules -- Pulling in Upstream Changes -- Working on a Submodule -- Publishing Submodule Changes -- Merging Submodule Changes -- Submodule Tips -- Submodule Foreach -- Useful Aliases -- Issues with Submodules -- Aborting -- Bundling -- Replace -- Credential Storage -- Under the Hood -- A Custom Credential Cache -- Summary -- Chapter 8: Customizing Git -- Git Configuration -- Basic Client Configuration -- core.editor -- commit.template -- core.pager -- user.signingkey -- core.excludesfile -- help.autocorrect -- Colors in Git -- color.ui -- color.* -- External Merge and Diff Tools -- Formatting and Whitespace -- core.autocrlf -- core.whitespace -- Server Configuration -- receive.fsckObjects -- receive.denyNonFastForwards -- receive.denyDeletes -- Git Attributes -- Binary Files -- Identifying Binary Files -- Diffing Binary Files -- Keyword Expansion -- Exporting Your Repository -- export-ignore -- export-subst -- Merge Strategies -- Git Hooks -- Installing a Hook -- Client-Side Hooks -- Committing-Workflow Hooks -- E-mail Workflow Hooks -- Other Client Hooks -- Server-Side Hooks -- pre-receive -- update.
post-receive -- An Example Git-Enforced Policy -- Server-Side Hook -- Enforcing a Specific Commit-Message Format -- Enforcing a User-Based ACL System -- Testing It Out -- Client-Side Hooks -- Summary -- Chapter 9: Git and Other Systems -- Git as a Client -- Git and Subversion -- git svn -- Setting Up -- Getting Started -- Committing Back to Subversion -- Pulling in New Changes -- Git Branching Issues -- Subversion Branching -- Creating a New SVN Branch -- Switching Active Branches -- Subversion Commands -- SVN Style History -- SVN Annotation -- SVN Server Information -- Ignoring What Subversion Ignores -- Git-Svn Summary -- Git and Mercurial -- Getting Started -- Workflow -- Branches and Bookmarks -- Mercurial Summary -- Git and Perforce -- Git Fusion -- Setting Up -- Fusion Configuration -- Workflow -- Git-Fusion Summary -- Git-p4 -- Setting Up -- Getting Started -- Workflow -- Branching -- Git and Perforce Summary -- Git and TFS -- Which Tool? -- Getting Started: git-tf -- Getting Started: git-tfs -- Git-tf[s] Workflow -- Workflow: git-tf -- Workflow: git-tfs -- Git and TFS Summary -- Migrating to Git -- Subversion -- Mercurial -- Perforce -- Perforce Git Fusion -- A Custom Importer -- Summary -- Chapter 10: Git Internals -- Plumbing and Porcelain -- Git Objects -- Tree Objects -- Commit Objects -- Object Storage -- Git References -- The HEAD -- Tags -- Remotes -- Packfiles -- The Refspec -- Pushing Refspecs -- Deleting References -- Transfer Protocols -- The Dumb Protocol -- The Smart Protocol -- Uploading Data -- SSH -- HTTP(S) -- Downloading Data -- SSH -- HTTP(S) -- Protocols Summary -- Maintenance and Data Recovery -- Maintenance -- Data Recovery -- Removing Objects -- Environment Variables -- Global Behavior -- Repository Locations -- Pathspecs -- Committing -- Networking -- Diffing and Merging -- Debugging -- Miscellaneous -- Summary.
Appendix A: Git in Other Environments.
Tags from this library: No tags from this library for this title. Log in to add tags.
Star ratings
    Average rating: 0.0 (0 votes)
No physical items for this record

Intro -- Contents at a Glance -- Contents -- About the Authors -- Preface by Scott Chacon -- Preface by Ben Straub -- Chapter 1: Getting Started -- About Version Control -- Local Version Control Systems -- Centralized Version Control Systems -- Distributed Version Control Systems -- A Short History of Git -- Git Basics -- Snapshots, Not Differences -- Nearly Every Operation Is Local -- Git Has Integrity -- Git Generally Only Adds Data -- The Three States -- The Command Line -- Installing Git -- Installing on Linux -- Installing on Mac -- Installing on Windows -- First-Time Git Setup -- Your Identity -- Your Editor -- Checking Your Settings -- Getting Help -- Summary -- Chapter 2: Git Basics -- Getting a Git Repository -- Initializing a Repository in an Existing Directory -- Cloning an Existing Repository -- Recording Changes to the Repository -- Checking the Status of Your Files -- Tracking New Files -- Staging Modified Files -- Short Status -- Ignoring Files -- Viewing Your Staged and Unstaged Changes -- Committing Your Changes -- Skipping the Staging Area -- Removing Files -- Moving Files -- Viewing the Commit History -- Limiting Log Output -- Undoing Things -- Unstaging a Staged File -- Unmodifying a Modified File -- Working with Remotes -- Showing Your Remotes -- Adding Remote Repositories -- Fetching and Pulling from Your Remotes -- Pushing to Your Remotes -- Inspecting a Remote -- Removing and Renaming Remotes -- Tagging -- Listing Your Tags -- Creating Tags -- Annotated Tags -- Lightweight Tags -- Tagging Later -- Sharing Tags -- Git Aliases -- Summary -- Chapter 3: Git Branching -- Branching in a Nutshell -- Creating a New Branch -- Switching Branches -- Basic Branching and Merging -- Basic Branching -- Basic Merging -- Basic Merge Conflicts -- Branch Management -- Branching Workflows -- Long-Running Branches -- Topic Branches.

Remote Branches -- Pushing -- Tracking Branches -- Pulling -- Deleting Remote Branches -- Rebasing -- The Basic Rebase -- More Interesting Rebases -- The Perils of Rebasing -- Rebase When You Rebase -- Rebase vs. Merge -- Summary -- Chapter 4: Git on the Server -- The Protocols -- Local Protocol -- The Pros -- The Cons -- The HTTP Protocols -- Smart HTTP -- Dumb HTTP -- The Pros -- The Cons -- The SSH Protocol -- The Pros -- The Cons -- The Git Protocol -- The Pros -- The Cons -- Getting Git on a Server -- Putting the Bare Repository on a Server -- Small Setups -- SSH Access -- Generating Your SSH Public Key -- Setting Up the Server -- Git Daemon -- Smart HTTP -- GitWeb -- GitLab -- Installation -- Administration -- Users -- Groups -- Projects -- Hooks -- Basic Usage -- Working Together -- Third Party Hosted Options -- Summary -- Chapter 5: Distributed Git -- Distributed Workflows -- Centralized Workflow -- Integration-Manager Workflow -- Dictator and Lieutenants Workflow -- Workf lows Summary -- Contributing to a Project -- Commit Guidelines -- Private Small Team -- Private Managed Team -- Public Project, Fork -- Public Project, E-Mail -- Summary -- Maintaining a Project -- Working in Topic Branches -- Applying Patches from E-mail -- Applying a Patch with apply -- Applying a Patch with am -- Checking Out Remote Branches -- Determining What Is Introduced -- Integrating Contributed Work -- Merging Workflows -- Large-Merging Workflows -- Rebasing and Cherry Picking Workflows -- Rerere -- Tagging Your Releases -- Generating a Build Number -- Preparing a Release -- The Shortlog -- Summary -- Chapter 6: Github -- Account Setup and Configuration -- SSH Access -- Your Avatar -- Your Email Addresses -- Two-Factor Authentication -- Contributing to a Project -- Forking Projects -- The GitHub Flow -- Creating a Pull Request -- Iterating on a Pull Request.

Advanced Pull Requests -- Pull Requests as Patches -- Keeping up with Upstream -- References -- Markdown -- GitHub Flavored Markdown -- Task Lists -- Code Snippets -- Quoting -- Emoji -- Images -- Maintaining a Project -- Creating a New Repository -- Adding Collaborators -- Managing Pull Requests -- Email Notifications -- Collaborating on the Pull Request -- Pull Request Refs -- Pull Requests on Pull Requests -- Mentions and Notifications -- The Notifications Page -- Web Notifications -- Email Notifications -- Special Files -- README -- CONTRIBUTING -- Project Administration -- Changing the Default Branch -- Transferring a Project -- Managing an Organization -- Organization Basics -- Teams -- Audit Log -- Scripting GitHub -- Hooks -- Services -- Hooks -- The GitHub API -- Basic Usage -- Commenting on an Issue -- Changing the Status of a Pull Request -- Octokit -- Summary -- Chapter 7: Git Tools -- Revision Selection -- Single Revisions -- Short SHA -- Branch References -- Ref Log Shortnames -- Ancestry References -- Commit Ranges -- Double Dot -- Multiple Points -- Triple Dot -- Interactive Staging -- Staging and Unstaging Files -- Staging Patches -- Stashing and Cleaning -- Stashing Your Work -- Creative Stashing -- Unapplying a Stash -- Creating a Branch from a Stash -- Cleaning Your Working Directory -- Signing Your Work -- GPG Introduction -- Signing Tags -- Verifying Tags -- Signing Commits -- Everyone Must Sign -- Searching -- Git Grep -- Git Log Searching -- Line Log Search -- Rewriting History -- Changing the Last Commit -- Changing Multiple Commit Messages -- Reordering Commits -- Squashing a Commit -- Splitting a Commit -- The Nuclear Option: filter-branch -- Removing a File from Every Commit -- Making a Subdirectory the New Root -- Changing E-Mail Addresses Globally -- Reset Demystified -- The Three Trees -- The HEAD -- The Index.

The Working Directory -- The Workflow -- The Role of Reset -- Step 1: Move HEAD -- Step 2: Updating the Index (--mixed) -- Step 3: Updating the Working Directory (--hard) -- Recap -- Reset with a Path -- Squashing -- Check It Out -- Without Paths -- With Paths -- Summary -- Advanced Merging -- Merge Conflicts -- Aborting a Merge -- Ignoring Whitespace -- Manual File Re-merging -- Checking Out Conflicts -- Merge Log -- Combined Diff Format -- Undoing Merges -- Fix the References -- Reverse the Commit -- Other Types of Merges -- Our or Theirs Preference -- Subtree Merging -- Rerere -- Debugging with Git -- File Annotation -- Binary Search -- Submodules -- Starting with Submodules -- Cloning a Project with Submodules -- Working on a Project with Submodules -- Pulling in Upstream Changes -- Working on a Submodule -- Publishing Submodule Changes -- Merging Submodule Changes -- Submodule Tips -- Submodule Foreach -- Useful Aliases -- Issues with Submodules -- Aborting -- Bundling -- Replace -- Credential Storage -- Under the Hood -- A Custom Credential Cache -- Summary -- Chapter 8: Customizing Git -- Git Configuration -- Basic Client Configuration -- core.editor -- commit.template -- core.pager -- user.signingkey -- core.excludesfile -- help.autocorrect -- Colors in Git -- color.ui -- color.* -- External Merge and Diff Tools -- Formatting and Whitespace -- core.autocrlf -- core.whitespace -- Server Configuration -- receive.fsckObjects -- receive.denyNonFastForwards -- receive.denyDeletes -- Git Attributes -- Binary Files -- Identifying Binary Files -- Diffing Binary Files -- Keyword Expansion -- Exporting Your Repository -- export-ignore -- export-subst -- Merge Strategies -- Git Hooks -- Installing a Hook -- Client-Side Hooks -- Committing-Workflow Hooks -- E-mail Workflow Hooks -- Other Client Hooks -- Server-Side Hooks -- pre-receive -- update.

post-receive -- An Example Git-Enforced Policy -- Server-Side Hook -- Enforcing a Specific Commit-Message Format -- Enforcing a User-Based ACL System -- Testing It Out -- Client-Side Hooks -- Summary -- Chapter 9: Git and Other Systems -- Git as a Client -- Git and Subversion -- git svn -- Setting Up -- Getting Started -- Committing Back to Subversion -- Pulling in New Changes -- Git Branching Issues -- Subversion Branching -- Creating a New SVN Branch -- Switching Active Branches -- Subversion Commands -- SVN Style History -- SVN Annotation -- SVN Server Information -- Ignoring What Subversion Ignores -- Git-Svn Summary -- Git and Mercurial -- Getting Started -- Workflow -- Branches and Bookmarks -- Mercurial Summary -- Git and Perforce -- Git Fusion -- Setting Up -- Fusion Configuration -- Workflow -- Git-Fusion Summary -- Git-p4 -- Setting Up -- Getting Started -- Workflow -- Branching -- Git and Perforce Summary -- Git and TFS -- Which Tool? -- Getting Started: git-tf -- Getting Started: git-tfs -- Git-tf[s] Workflow -- Workflow: git-tf -- Workflow: git-tfs -- Git and TFS Summary -- Migrating to Git -- Subversion -- Mercurial -- Perforce -- Perforce Git Fusion -- A Custom Importer -- Summary -- Chapter 10: Git Internals -- Plumbing and Porcelain -- Git Objects -- Tree Objects -- Commit Objects -- Object Storage -- Git References -- The HEAD -- Tags -- Remotes -- Packfiles -- The Refspec -- Pushing Refspecs -- Deleting References -- Transfer Protocols -- The Dumb Protocol -- The Smart Protocol -- Uploading Data -- SSH -- HTTP(S) -- Downloading Data -- SSH -- HTTP(S) -- Protocols Summary -- Maintenance and Data Recovery -- Maintenance -- Data Recovery -- Removing Objects -- Environment Variables -- Global Behavior -- Repository Locations -- Pathspecs -- Committing -- Networking -- Diffing and Merging -- Debugging -- Miscellaneous -- Summary.

Appendix A: Git in Other Environments.

Description based on publisher supplied metadata and other sources.

Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2023. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.

There are no comments on this title.

to post a comment.