Translation Git Done

This commit is contained in:
Lingkang 2022-10-03 20:12:33 +08:00
parent 07af7d03c7
commit 57a1839922

View file

@ -6,6 +6,14 @@ Git is a distributed version control system. Linux creator Linus Torvalds develo
The design of Git is very elegant, but beginners usually find it very difficult to use because it is difficult to understand its internal logic. Beginners who are not familiar with Git are easy to destroy the controlled versions because of mis-using its commands.
But trust me, like Vim, Git is a powerful tool that you will exclaim 'it's worth it!' after you finally manage it.
But trust me, like Vim, Git is a powerful tool that you will finally exclaim 'it's worth it!' after you mastered it.
## How to learn to use Git
Different from Vim, I don't suggest beginners use Git rashly without sufficient understanding of it. That's because it's inner logic can not be acquainted by practicing, but takes time to figure out. Here is my recommended learning path:
1. Read this [Git tutorial](https://missing.csail.mit.edu/2020/version-control/), and this video [Git tutorial (by 尚硅谷)](https://www.bilibili.com/video/BV1vy4y1s7k6) in Chinese.
2. Read Chap1 - Chap5 of this open source book [Pro Git](https://git-scm.com/book/en/v2). Yes, to learn Git, you need to read a book.
3. Now that you have understood its principles and most of its usages, it's time to consolidate those commands by practicing. It's also a philosophy that how to use Git properly. I personally think this blog [How to Write a Git Commit Message](https://chris.beams.io/posts/git-commit/) is really wroth reading.
4. You are now in love with Git, and you are not content with managing it, you want to build it by yourself! Great, that's exactly what I was thinking. [This tutorial](https://wyag.thb.lt/) may satisfy you!
5. What? Building your own Git is not enough? You're quite promising! I also like reinventing the wheel. This two GitHub projects, [build-your-own-x](https://github.com/danistefanovic/build-your-own-x) and [project-based-learning](https://github.com/tuvtran/project-based-learning), include any wheel-reinventing tutorial you can imagine, i.e., to build your own text editor, virtual machine, docker, TCP and so on.