{"product_id":"git-intermediate-jacek-drg-9798866286201","title":"GIT intermediate: Know abstractions you use.","description":"Discover the beauty and elegance of Git! Learn to create decent, professional repositories! \u003cp\u003e\u003c\/p\u003eBearing \u003cb\u003ethe proper abstractions\u003c\/b\u003e in mind, you know \u003cb\u003ewhy\u003c\/b\u003e and \u003cb\u003ewhat\u003c\/b\u003e should be done; It is easier then, to find the answer to \u003cb\u003ehow\u003c\/b\u003e to do it. \u003cp\u003e\u003c\/p\u003eThe book gives the reader \u003cb\u003ea good sense of Git's mechanics\u003c\/b\u003e. It is particularly useful when less obvious situations occur. \u003cp\u003e\u003c\/p\u003eThe book can be read as \"from zero to hero\" guide, but an advanced user (being able to fully interpret the front cover) will find something valuable as well. \u003cp\u003e\u003c\/p\u003eAt first glance, Git looks like a tangle of strange commands with incomprehensible parameters. The documentation is hard to read, so the entry threshold seems high. This creates a natural temptation to scrape the bottom of the barrel: to learn just a few operations (performed from command line, graphical tool or IDE)\u003cbr\u003etypical of the team's workflow. \u003cp\u003e\u003c\/p\u003eAs a result, the repository is cluttered with project versions of poor quality, many of which do not meet established standards. E.g.\u003cul\u003e\n\u003cli\u003e\n\u003cb\u003e\"Under construction\" versions\u003c\/b\u003e\u003cbr\u003eThe changes committed \"before lunch\", before and after \u003ci\u003ecode review\u003c\/i\u003e, etc. Ok, one can improve it a bit by using \u003ci\u003e--squash\u003c\/i\u003e option.\u003c\/li\u003e\n\u003cli\u003e\n\u003cb\u003eMany incoherent changes in one version\u003c\/b\u003e\u003cbr\u003eChanges that are hard to review\/understand; hindering extracting\/reverting parts of them.\u003c\/li\u003e\n\u003c\/ul\u003e\u003cbr\u003e\u003cb\u003eIs really such a cluttered repository good enough for a professional team in 2023?\u003c\/b\u003e\u003cbr\u003eShould really \"just merge the branch\" approach be your way?\u003cbr\u003eOr should you rather care of individual commits? \u003cp\u003e\u003c\/p\u003e\u003cb\u003e\"GIT intermediate\"\u003c\/b\u003e is short.\u003cbr\u003eOn 120 pages of loose text, the book - often in an experimental way - introduces into the world of Git's abstracts and gives practical knowledge, illustrated by examples. \u003cp\u003e\u003c\/p\u003eThere are a few main entities that need to be captured to have \u003cb\u003ea good sense of Git's mechanics\u003c\/b\u003e. These are: \u003cul\u003e\n\u003cli\u003eRepository as a commit graph.\u003c\/li\u003e\n\u003cli\u003eRefs (of any kinds) as tools for graphs growing (both local and remote).\u003c\/li\u003e\n\u003cli\u003eImmutability of the graph vs history rewriting (transplanting of the commits).\u003c\/li\u003e\n\u003cli\u003eCooperation between local and remote repository as sharing of the subgraphs.\u003c\/li\u003e\n\u003c\/ul\u003eThe metaphors of all these entities fit on the front cover! Can you recognize them? See a short YouTube session: https: \/\/youtu.be\/8XxG3c6v4vg \u003cp\u003e\u003c\/p\u003eThe author demystifies the \u003cb\u003eoften misunderstood things\u003c\/b\u003e, explaining \u003cb\u003ehow\u003c\/b\u003e things can be done: \u003cul\u003e\n\u003cli\u003ecommit\u003c\/li\u003e\n\u003cli\u003eindex\/staging area\u003c\/li\u003e\n\u003cli\u003ereset\u003c\/li\u003e\n\u003cli\u003erebase\u003c\/li\u003e\n\u003cli\u003efast-forward-merge\u003c\/li\u003e\n\u003cli\u003emerge conflicts\u003c\/li\u003e\n\u003c\/ul\u003eThe topics covered are illustrated with examples and contain links to the documentation. Advanced issues (e.g. \u003ci\u003erefspec\u003c\/i\u003e) and extensive issues (e.g. \u003ci\u003egit log\u003c\/i\u003e) are described synthetically, with an indication of interesting issues and references to the appropriate parts of the documentation. \u003cp\u003e\u003c\/p\u003eThe repetitions are intentional, they are intended to help the reader remember \u003cb\u003ethe proper abstractions\u003c\/b\u003e.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eAuthor:\u003c\/b\u003e Jacek Drąg\u003cbr\u003e\u003cb\u003eISBN-13:\u003c\/b\u003e 9798866286201\u003cbr\u003e\u003cb\u003ePublisher:\u003c\/b\u003e Independently Published\u003cbr\u003e\u003cb\u003eLanguage:\u003c\/b\u003e English\u003cbr\u003e\u003cb\u003ePublished:\u003c\/b\u003e 01\/16\/2024\u003cbr\u003e\u003cb\u003ePages:\u003c\/b\u003e 124\u003cbr\u003e\u003cb\u003eFormat:\u003c\/b\u003e Paperback\u003cbr\u003e\u003cb\u003eWeight:\u003c\/b\u003e 0.46lbs\u003cbr\u003e\u003cb\u003eSize:\u003c\/b\u003e 9.61h x 6.69w x 0.26d","brand":"Jacek Dr\u0026#261;g","offers":[{"title":"Paperback","offer_id":47580007661823,"sku":"9798866286201","price":12.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0662\/2982\/9887\/files\/img_ebb6c05b-3029-4d26-8dc9-d2429b10de2e.jpg?v=1763878151","url":"https:\/\/www.whiterainbookhouse.com\/products\/git-intermediate-jacek-drg-9798866286201","provider":"WR Book House","version":"1.0","type":"link"}