Unfortunately I wouldn’t buy these given that it’s from Packt Publishing. I’ve bought quite a few of their books over the years and more often than not they’re either full of glaring writing errors that would have been caught if the book was looked at by an editor at all, the code examples have errors that require deep knowledge of said book topic to correct making it hard to progress, or the book doesn’t seem to follow a linear learning path making understanding what the author is trying to convey much harder.
Don’t get me wrong there are some good books from Packt, but they’re much rarer than say a book from O’Reilly or Manning. They seem to just churn out content and not have a rigorous editing process meaning that it’s mostly up to the author’s writing ability to create something useful.
I used to grab their free ebook of the day when they used to have that and more often than not I would delete or never finish the books because they were just so low quality.
Inside git’s internal plumbing folder, git holds a file with the branch name and all of the references (files and changes) for that branch.
When you make a new branch git will update its internal plumbing checking to see if the new branch already exists, updates its references to the new branch if it doesn’t (all held internally in a case sensitive way). It will then make that new branch file, git has already checked that the case senitive name for the branch doesn’t exist internally, so it should be good to go.
Part of its process is creating that internal branch file… But wait!
Windows doesn’t have case sensitive naming so when it tries to make that new branch file it will overwrite the old one (since it shouldn’t exist by git’s own reference!) All of the files and references for it now get nuked.
Now you’re at best back to wherever that originally named branch came from, at worse your .git folder is properly borked.