
Version control with Git
by Jon Loeliger · first published 2009
67% recommend33% neutral
Why HN recommends it
Explains how Git's commit graph and underlying model work, connecting individual commands to basic operations on that graph. It helps make Git click, especially for those who struggled early on.
Summarised by Claude from recommending comments
Version Control with Git takes you step-by-step through ways to track, merge, and manage software projects, using this highly flexible, open source version control system. Git permits virtually an infinite variety of methods for development and collaboration. Created by Linus Torvalds to manage development of the Linux kernel, it's become the principal tool for distributed version control. But Git's flexibility also means that some users don't understand how to use it to their best advantage. Version Control with Git offers tutorials on the most effective ways to use it, as well as friendly ye
Affiliate links. As an Amazon Associate I earn from qualifying purchases.
…of how the underlying persistence model works was for me a revelatory experience. This was presented together with a description of the precise problem git was designed to solve in the O'Reilly book, Version Control with Git. It seemed to be a problem solved in every particular -- an exact solution, that rarest of all things. I did struggle with git before I read about it, which is why I picked up the book in the first place.…
on “Why is git pull considered harmful? (2013)” ↗…that helped me out on that journey: - Continuous Delivery by Jez Humble and Dave Farley - The Pragmatic Programmer by Andy Hunt and Dave Thomas - A History of Modern Computing by Paul E. Ceruzzi - Version Control with Git by Prem Ponuthorai and Jon Loeliger - and SICP. Understanding it is like accessing a new dimension of power.
on “Books for Software Engineers in 2023” ↗…( http://shop.oreilly.com/product/9780596514549.do ) For other subjects: Code Complete needs little introduction ( http://shop.oreilly.com/product/9780735619678.do ) I've only just started reading Version Control with Git, but it seems pretty good so far, and is well-reviewed ( http://shop.oreilly.com/product/9780596520137.do )
on “Save 50% on all oreilly's ebooks and videos (today only)” ↗…first learning Git. I've been using it for 5 years now, and have done some pretty crazy things with it, and yet haven't screwed up the master branch since then. However to get to that point I had to read "Version Control with Git: Powerful Tools and Techniques for Collaborative Software Development" (this was after royally fucking up and not wanting to get fired).
on “I Botched a Perl 6 Release” ↗…industry. If you published your work online backed by git with hashes with a free public service like GitHub, how could someone steal it? If you are an academic and don't know git, why can't you pick up "Version Control with Git" from your library or buy a used copy for $5 and spend a couple days to learn it? > the goal is not to "move fast and break things," Who said that was the goal? Why would you want to remain wrong longer?…
on “Why Most Published Research Findings Are False (2005)” ↗I also struggled with Git many years ago. Then I read the excellent "Version Control with Git" in 2014. Never looked back. It does an excellent job in connecting the Git commands to various basic operation on the commit graph. [0] https://www.oreilly.com/library/view/version-control-with/97...
on “I struggled with Git, so I'm making a game to spare others the pain” ↗…reading these books * Iron-Clad Java: Building Secure Web Applications. * How Linux Works: What Every Superuser Should Know. * Black Hat Python. Paused reading * Functional Programming in Scala. * Version Control with Git. Bought due to HN praises, skimmed through, but probably won't read * Structure and Interpretation of Computer Programs.
on “Ask HN: Which book are you reading these days?” ↗That was weird: an hour ago I was reading "Version Control with Git" about merging and thinking "Hey, this is all just category theory", I then have a look at HN, and see this.
on “VCS based on categorical theory of patches (2017)” ↗Here are tools people commonly use for notebook version control with git - [1] nbdime to view local diffs & merge changes [2] jupytext for 2-way sync between notebook & markdown/scripts [3] JupyterLab git extension for git clone / pull / push & see visual diffs [4] Jupyerlab…
on “Ask HN: Are there any good Diff tools for Jupyter Notebooks?” ↗