Git: Version Control for Everyone
Formats:
save 20%!
save 37%!
Free Shipping!
| Also available on: |
|
- A complete beginner's workflow for version control of common documents and content
- Examples used are from non-techie, day to day computing activities we all engage in
- Learn through multiple modes – readers learn theory to understand the concept and reinforce it by practical tutorials.
- Ideal for users on Windows, Linux, and Mac OS X
Book Details
Language : EnglishPaperback : 180 pages [ 235mm x 191mm ]
Release Date : January 2013
ISBN : 1849517525
ISBN 13 : 9781849517522
Author(s) : Ravishankar Somasundaram
Topics and Technologies : All Books, Beginner's Guides, Open Source, Web Development
Table of Contents
PrefaceChapter 1: Breathe Easy – Introduction to Version Control System
Chapter 2: Welcome Aboard – Installing Git
Chapter 3: Polishing Your Routine – How to Increase Everyday Productivity
Chapter 4: Split the Load – Distributed Working with Git
Chapter 5: Be a Puppet Master – Learn Fancy Features to Control Git's Functions
Chapter 6: Unleash the Beast – Git on Text-based Files
Chapter 7: Parallel Dimensions – Branching with Git
Chapter 8: Behind the Scenes – Basis of Git Basics
Index
- Chapter 1: Breathe Easy – Introduction to Version Control System
- Do you need help
- What is a version control system
- Why you need a version control system
- Types of version control systems
- Local version control system
- Tidbits
- Centralized version control system
- Distributed version control system
- Falling for Git
- Atomicity
- Performance
- Security
- Summary
- Chapter 2: Welcome Aboard – Installing Git
- Choosing your type – download your OS specific package
- Windows
- Linux
- Mac
- Installation
- Time for action – installing Git on Windows
- Time for action – installing Git on Mac
- Time for action – installing Git on Linux
- Summary
- Chapter 3: Polishing Your Routine – How to Increase Everyday Productivity
- Suit up – getting ready for your Git
- Initiation
- Time for action – initiation in GUI mode
- Time for action – initiation in CLI mode
- Behind the screen
- Configure Git
- Time for action – configure Git in GUI mode
- Out of flow
- Time for action – configure Git in CLI mode
- Adding your files to your directory
- Time for action – adding files to your directory (GUI and CLI mode)
- Ignore 'em
- Bulk operations
- .gitignore to the rescue
- Time for action – usage of .gitignore
- Undo addition
- Committing the added files
- Time for action – committing files in GUI mode
- Time for action – committing files in CLI mode
- Time for action – rescan in GUI mode
- Checking out
- Time for action – checking out using GUI mode
- Time for action – checking out using CLI mode
- Resetting
- Time for action – reset using GUI mode
- Time for action – reset using CLI mode
- Git help
- Summary
- Chapter 4: Split the Load – Distributed Working with Git
- Why share your files
- Scenario 1: single player
- Scenario 2: multiple players – one at a time
- Kid's play – push and pull for a remote source
- Scenario 1: solution
- Going public – sharing over the Internet
- Time for action – adding a remote origin using CLI mode
- Time for action – resume your work from anywhere using CLI mode
- Time for action – adding a remote origin using GUI mode
- Time for action – resume your work from anywhere using GUI mode
- Scenario 2: solution
- Inviting users to your Bitbucket repository
- Staying local – share over the intranet
- Time for action – creating a bare repository in CLI mode
- Time for action – creating a bare repository in GUI mode
- Summary
- Chapter 5: Be a Puppet Master – Learn Fancy Features to Control Git's Functions
- Why learn such fancy features
- Prerequisites
- Shortlog
- Time for action – getting acquainted with shortlog
- Time for action – parameterizing shortlog
- Log search – git log
- Time for action – skip commit logs
- Time for action – filter logs with date range
- Time for action – searching for a word/character match
- Clean
- Time for action – emulate the mess
- Time for action – clean up your mess with pattern match
- Time for action – wipe out your mess completely, no exceptions
- Tagging
- Time for action – lightweight/unannotated tagging
- Time for action – referencing tags
- Time for action – annotated tagging
- Simple exercise
- Summary
- Chapter 6: Unleash the Beast – Git on Text-based Files
- Git for text-based files – an introduction
- Multiplayer mode – multiple players at a time
- Multiple players – one at a time
- Multiple players – all hands on deck (many at a time)
- Sharing your repository
- Time for action – getting ready to share
- Time for action – distributed work force
- Time for action – Bob's changes
- Time for action – Lisa's changes
- Time for action – Lisa examines the merge conflict
- Time for action – Lisa resolves the merge conflict
- GUI mode – get the repository's history graph
- CLI mode – get the repository's history graph
- Time for action – team members get sync with the central bare repo
- Summary
- Chapter 7: Parallel Dimensions – Branching with Git
- What is branching
- Why do you need a branch
- Naming conventions
- When do you need a branch
- Practice makes perfect: branching with Git
- Scenario
- Time for action – creating branches in GUI mode
- Time for action – creating branches in CLI mode
- .config file – play with shortcuts
- Time for action – adding simple aliases using CLI
- Time for action – chain commands with a single alias using CLI
- Time for action – adding complex aliases using GUI
- Summary
- Chapter 8: Behind the Scenes – Basis of Git Basics
- Two sides of Git: plumbing and porcelain
- Git init
- Hooks
- Info
- Config
- Description
- Objects
- Blob
- Trees
- Commits
- Tags
- HEAD
- Refs
- Bumper alert – directories inside heads and tags
- Index
- Git – a content tracking system
- Git add
- Git commit
- Git status
- Git clone
- Git remote
- Git branch
- Git tag
- Git fetch
- Git merge
- Git pull
- Git push
- Git checkout
- Relation across relations – Git packfiles
- Transferring packfiles
- Summary
Ravishankar Somasundaram
Code Downloads
Download the code and support files for this book.
Submit Errata
Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.
Errata
- 1 submitted: last submission 17 May 2013Errata type: Typo | Page number: 132
14. Open the participants.txt file and resolve the merge conflict as as learned in Chapter 6, Unleash the Beast – Git on Text-based Files, then add the changes, and finally commit them.
Should be : Open the participants.txt file and resolve the merge conflict as learned in Chapter 6, Unleash the Beast – Git on Text-based Files, then add the changes, and finally commit them.
Sample chapters
You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.
- Installing and configuring Git on your machine
- Basic concepts of Git to get started with versioning
- Sharing and collaboration of files with Git
- Additional tools which can come in handy
- Extended operations with Git on text based files
This book is a step by step, practical guide, helping you learn the routine of version controlling all your content, every day.
If you are an average computer user who wants to be able to maintain multiple versions of files and folders, or to go back and forth in time with respect to the files content – look no further. The workflow explained in this book will benefit anyone, no matter what kind of text or documentation they work on.
This book will also benefit developers, administrators, analysts, architects and anyone else who wishes to perform simultaneous, collaborative work, or work in parallel on the same set of files. Git's advanced features are there to make your life easier.

