- Paperback: 340 pages
- Publisher: Packt Publishing Limited (July 24, 2014)
- Language: English
- ISBN-10: 1782168451
- ISBN-13: 978-1782168454
- Product Dimensions: 7.5 x 0.8 x 9.2 inches
- Shipping Weight: 735 g
- Average Customer Review: Be the first to review this item
Git Version Control Cookbook Paperback – 25 July 2014
|New from||Used from|
About the Author
Aske Olsson has more than 10 years of experience in the software industry. With a background as an electrical engineer, he has used every tool available for development, from a soldering iron over Assembly, C, and Java programming to different SCM, build- and issue-tracking systems. Aske has worked for Nokia for 6 years, where he was one of the leading forces behind complex tool transformation and renewal projects. Among them was a broad adoption of Git SCM, Gerrit Code Review, and Jenkins CI. Currently, Aske works at Schantz, a company developing advanced IT solutions for the financial sector. He develops and maintains their continuous delivery pipeline. Aske is also one of the four founding partners in the software development tools and processes company Switch-Gears ApS, where he helps customers, large and small, increase the maturity and productivity of their software delivery efforts by moving the customers from legacy tools and working modes to modern open source based tools and processes. Aske has more than 4 years of experience working with Git, and since 2011, he has been teaching Git in regular training sessions, from basic Git to its advanced usage. Rasmus Voss is specialized in continuous integration, software releasing, and process automation. His vast knowledge on these areas has been built by a 10-year career in Nokia mobile phones in Copenhagen, Denmark and Beijing, China, where he started optimizing autotesting for the Series 30 platform. He later moved to software releasing and became part of the team that upgraded the software delivery chain from an old version control system CM Synergy to Git, incorporating Gerrit for code review and Jenkins for single commit verification, software releasing, and much more. Rasmus spent 2 years in China working for Nokia where he sparred with developers, release managers, test engineers, and leaders to optimize the process so that developers could spend time coding and testers knew what they were testing. Today, Rasmus has his own company VossCon, where he consults with companies on how to make the most of developers and testers by optimizing software releasing, providing visibility in the delivery chain, upgrading the tool chain, automating tedious processes, and training developers. He also holds courses on Git, Gerrit, and Jenkins.
No customer reviews
|5 star (0%)||0%|
|4 star (0%)||0%|
|3 star (0%)||0%|
|2 star (0%)||0%|
|1 star (0%)||0%|
Most helpful customer reviews on Amazon.com
Before getting into the details of the book, which, spoiler, deserves some praise, a quick note: as the title itself suggests, it's a cookbook, not an introductory text. As such, it does not teach the reader what is Git and how to clone a remote repository. The reader is expected to have a good knowledge of Git and know by heart how to clone, branch, merge, fast-forward and tag, among other things.
Spanning through some twelve chapters, this co-authored book is one of those that you won't finish in an afternoon. Not unless you simply walk quickly through the pages. This book, as typical of a cookbook, is best used when sitting in front of a terminal, with a coffee cup next to the keyboard and enough time to try out the examples, writing down precious notes. As a cookbook, it delivers. The authors follow the consolidated problem-solution approach and cover different subjects, ranging from the global configuration up to patching, passing through edgy topics such as rebasing. Each recipe follows a specific pattern: the problem is introduced; the solution is presented and then explained. Finally, each recipe ends with a paragraph where the authors extend the solution adding more flavors, redirecting the reader to either online resources or the man pages.
Technically the book is well written, easy to follow (as long as the concepts are already known). Proofreaders did their job. While not all the recipes will be interesting to everyone, anyone, independently of his skills, will walk away learning something new. Among the concepts that I have particularly enjoyed is pruning. Very clear and exhaustive.
Despite the many good things about this book, and the fact that overall is a good pick, there are a couple of things that I did not like: first, I think way too much time is dedicated to the configuration, which is something very basic; similarly, more often than not, the same recipe is presented twice, one solved with the terminal and one with a GUI, which is instead something that I would have added to that extra paragraph at the end of each recipe. Some recipe, moreover, felt way too edge case to happen in real life.
Before tying it all up, a final note: this title, just like most of the other books covering Git out there, lacks something: presenting different real life scenarios where, based on the project, team and distribution, we are presented with guidelines and best strategies to model branches and deliveries. But maybe this would deserve a book on its own.
A very good book, no doubts. While not outstanding, it definitely serves well anyone working with Git.
As usual, you can find more reviews on my personal blog: http://books.lostinmalloc.com. Feel free to pass by and share your thoughts!
Like every cookbook, this tool is pretty useless if you don’t know “how to cook”; the purpose of this collection of recipes is to help a good cook to become a great chef, supplying a wide range of recipes.
This book is not a “from beginning to end” kind of book; you can read it in a random way, looking for the right recipe for the situation.
I really enjoyed how Aske Olsson and Rasmus Voss taken care about the “explanation” part of recipes; this is not a book where you find only commands to type mechanically, but there are wide explanations and graphics to help the reader understand what the command is about to do.
The book is organized in 12 chapters, grouped by working areas.
In 1st chapter there are a bunch of good recipes to improve the way you sail in the sea of a Git repository; in 2nd chapter we finally get explained the “have-to-know” config options; 3rd chapter is for the trees lovers: branching and merging will have no more secrets after this. The 4th chapter is for rebasing, a powerful feature in Git, sometimes hard to master. Have you ever heard about Git notes? If not, 5th chapter is for you. 6th chapter is for data diggers: if you like grepping data here and there, now you can learn how to do it in a Git repository. The 7th chapter illustrates Git hooks, while 8th chapter helps us to deal with common mistakes (I found this chapter very useful!). In the 9th chapter you can reach the title of “master”: you will find recipes to pruning branches, split repositories, deal with submodules and related merge operations. 10th chapter is for patching, while 11th is for low level commands. A the end, in the 12th chapter you will find a much appreciated collection of tips and trick like aliases, auto completion, stashes and so on.
I recommend this book for Git users who wants to improve their skills, going deep to realize what happens under the hood when needed. If you are a newcomer, if you have little or no experience with Git you'd better read this book at a later time.
For the rest, I really enjoyed the book layout: you can easily distinguish command lines from descriptive part; titles and paragraphs are highlighted properly and illustrations appears just where they are needed.
Good job guys, and good job Packt too! :)
It's not the book you should get if you're new to Git of version control systems. There are no deep explanations to the techniques and the authors seem to assume you've worked with the command line and Git before. So if that's you, and you want to get better, then this is the book for you.