Version Control with Git: Powerful Tools and Techniques for Collaborative Software Development

Version Control with Git: Powerful Tools and Techniques for Collaborative Software Development

4.0 8
by Jon Loeliger, Matthew McCullough
     
 

View All Available Formats & Editions

Get up to speed on Git for tracking, branching, merging, and managing code revisions. Through a series of step-by-step tutorials, this practical guide takes you quickly from Git fundamentals to advanced techniques, and provides friendly yet rigorous advice for navigating the many functions of this open source version control system.

This thoroughly revised

Overview

Get up to speed on Git for tracking, branching, merging, and managing code revisions. Through a series of step-by-step tutorials, this practical guide takes you quickly from Git fundamentals to advanced techniques, and provides friendly yet rigorous advice for navigating the many functions of this open source version control system.

This thoroughly revised edition also includes tips for manipulating trees, extended coverage of the reflog and stash, and a complete introduction to the GitHub repository. Git lets you manage code development in a virtually endless variety of ways, once you understand how to harness the system’s flexibility. This book shows you how.

  • Learn how to use Git for several real-world development scenarios
  • Gain insight into Git’s common-use cases, initial tasks, and basic functions
  • Use the system for both centralized and distributed version control
  • Learn how to manage merges, conflicts, patches, and diffs
  • Apply advanced techniques such as rebasing, hooks, and ways to handle submodules
  • Interact with Subversion (SVN) repositories—including SVN to Git conversions
  • Navigate, use, and contribute to open source projects though GitHub

Product Details

ISBN-13:
9781449316389
Publisher:
O'Reilly Media, Incorporated
Publication date:
08/27/2012
Edition description:
Second Edition
Pages:
456
Sales rank:
481,288
Product dimensions:
6.90(w) x 9.10(h) x 1.00(d)

Meet the Author

Jon Loeliger is a freelance software engineer who contributes to Open Source projects such as Linux, U-Boot, and Git. He has given tutorial presentations on Git at many conferences including Linux World, and has written several papers on Git for Linux Magazine.

In prior lives, Jon has spent a number of years developing highly optimizing compilers, router protocols, Linux porting, and the occasional game. Jon holds degrees in Computer Science from Purdue University. In his spare time, he is a home winemaker.

Matthew McCullough, Vice President of Training for GitHub.com, is an energetic 15-year veteran of enterprise software development, world-traveling open source educator, and co-founder of a US consultancy. All these activities provide him avenues of sharing success stories of leveraging Git and GitHub. Matthew is a contributing author to the Gradle and Jenkins O'Reilly books, as well as the creator of the Git Master Class series for O'Reilly. Matthew also regularly speaks on the No Fluff Just Stuff Java symposium series. He is the author of the DZone Git RefCard, and president of the Denver Open Source Users Group.

Customer Reviews

Average Review:

Write a Review

and post it to your social network

     

Most Helpful Customer Reviews

See all customer reviews >

Version Control with Git: Powerful Tools and Techniques for Collaborative Software Development 4 out of 5 based on 0 ratings. 8 reviews.
Anonymous More than 1 year ago
FantasyRider More than 1 year ago
Great Git book! Already having a background in advanced usage of ClearCase, CVS, and SVN, I picked up Version Control with Git by Jon Loeliger and Matthew McCullough (O'Reilly publisher) to understand how Git could help me solve some of the feature challenges I have been working through with other VCSs. This book certainly was able to deliver to my expectations. The authors work through the processes to setup and configure Git step-by-step. In addition, they also spends a great deal of time delving into the more important topics required to work with Git as a power user. The examples were useful and the diagrams where acceptable to convey the points needed. There is no doubt that that the authors understand Git. The time they take in explaining why to “do something” is important in moving the reader from a simple user of Git into becoming a power user. The “Submodule Best Practices” chapter was helpful in solving some of my current challenges while the “Tips, Tricks, and Techniques” chapter gave me some quick wins. While there are many ways to solve the same problem when using any VCS, I felt like the authors worked hard to provide an honest and open view of their approaches. I highly recommend Version Control with Git to the reader that wants to understand more about a VCS like Git than simply a small number of quick commands via an IDE. While this book is not a definitive reference guide in all things Git, it provides a solid foundation that allows the reader to head in the right path as they learn more about Git’s inner workings.
Anonymous More than 1 year ago
Very nice progression and good examples.
Anonymous More than 1 year ago
Anonymous More than 1 year ago
ert829 More than 1 year ago
This book was well written and reasonable to follow. The examples all worked for me and I was able to achieve my goal of using GIT to version control my software. I was able to create a remote repositiory on a usb stick and clone this repositiory to multiple development pcs. Changes made to the source by each pc were able to be synchronized with the main repository. There is an example of exactly how to do this in the book. I am an experienced IBM Rational Clearcase user, so I already understood the concepts involved. There is a pretty good use case example of multiple developers working on multiple branches, which illustrates concurrent development in a reasonable way. It took me a while to understand this stuff when I first learned Clearcase. A book like this would have been useful. I recommend this book.
INDEPENDENTREVIEWER More than 1 year ago
Do you want to gain insight into some of Git's internal design and be able to master some of its more powerful techniques? If you do, then this book is for you! Author Jon Loeliger, has done an outstanding job of writing a book that shows you how you can learn enough about basic Git operations to be productive in a short while. Loeliger, begins by showing you how to install Git on Linux and Microsoft Windows and within Cygwin. Next, the author explores why and where Git differs by examining the key components of its architecture and some important concepts. Then, he explains how to manage the index and your corpus of files. The author continues by showing you how to select, create, view, and remove branches. Next, he covers some of the basics of git diff and some of its special capabilities. Then, he shows you how to combine two or more different lines of development. The author continues by showing you examples and techniques to share, track, and obtain data across multiple repositories. Next, he presents two approaches to managing and publishing repositories for cooperative development. Then, the author explains when you might want to use patches and shows you how to generate, send, and apply a patch. He continues by discussing why developers create submodules and how Git attempts to deal with them. Finally, the author shows you how to use Git when the rest of your team employs a Subversion. This most excellent book shows you why Git is a powerful, flexible, and low-overhead version control tool that makes collaborative development a pleasure. More importantly, if you read this book cover to cover, you'll discover why Git has proven valuable to a wide range of projects.
feng jin More than 1 year ago
I have one. Great!