写点什么

这才是 Git 的正确学习方式!

作者:Jackpop
  • 2022-12-02
    浙江
  • 本文字数:2036 字

    阅读完需:约 7 分钟

程序员宝藏库https://gitee.com/sharetech_lee/CS-Books-Store

你想要的,这里都有!


我认为学习一门知识最怕的就是一知半解、草草了事,对于 Git 这种工具类更是如此。


有很多同学工作后,日常用到 git clone、git add、git commit,能够解决日常开发中的基本操作就认为差不多会了。


但是,遇到复杂点的问题,发现对 Git 的基本原理、操作并没有很深入的理解。


这样,只能再去百度查解决方法,查了半天,踩了不少坑终于解决了,下次又遇到同样的问题,发现之前查的内容全忘了,主要原因还是知识不成体系,当初查询的主要目的还是为了解决当下问题。


这种方法其实并没有少花时间,而且在开发过程中会感觉步履维艰,一步一个坎。


所以,我建议如果想在开发中用好 Git,还是需要先系统的学习一下 Git 的用法。


网上搜一下 Git 学习教程,会发现多如牛毛,有免费的,也有昧着良心收费的。


其实,我觉得从事开发工作,最好的学习资源往往就是官方提供的免费文档,权威,而且理解深度要比很多博主「二次加工」的好很多。


因此,学习方面我还是更推荐 Git 的官网文档,这里放一下链接:


https://git-scm.com/book/zh/v2


打开文档可以看到,它全面涉及 Git 基础、Git 分支、服务器上的 Git、分布式 Git、Github、Git 工具、Git 内部原理等内容,覆盖非常全面。



而且,在每一篇文档中,它都会理论、操作、图示相结合,内容循序渐进,由浅入深,是一份质量很高、内容很严谨的官方文档。



此外,官方文档提供 PDF、epub 两种格式的下载,如果喜欢离线阅读或者打印出来看的同学,它也很不错。


基础知识学完了,可能有些同学对于 Git 的理解还是不够深入,接下来就需要「动手实践」,这里也给大家推荐一个免费开源的工具--LearnGitBranching,目前在 Github 已经 26k+Star,它或许不是最好的,但是在我看来它非常特别,而且对于理解 Git 命令有很大的帮助。



简单概括,LearnGitBranching 是一款 Git 的可视化学习工具,它通过交互式的方式教授大家学习 Git,并且提供一些列的挑战,能通过可视化及挑战帮助大家理解 Git 操作和命令。


学习者可以在交互页面输入各种命令,页面会动态的根据输入命令,以动画的方式展示输入命令之后的效果,下面可以看一个示例:



通过这种交互式的方式,可以帮助开发人员更加直观的理解每种操作对应的效果,对于加深对 Git 命令的理解很有帮助。


除了可视化、交互式的方式,它还提供了一些其他功能。

沙盒模式


默认情况下,应用程序以“沙盒模式”启动,并已创建基本存储库。在这里您可以输入命令并随心所欲地处理存储库。


你可以在沙盒里做如下操作:


  • undo:撤消上一条命令的效果

  • reset:从头开始

  • git clone:模拟远程仓库

关卡


输入 levels 可以查看可用的课程/挑战,关卡里提供了从基础到高级、技术、技巧不同等级的教程和挑战,对于加深理解很有帮助。


除此之外,LearnGitBranching 有一项 git golf 功能,它会跟踪解决每个调账使用了多少命令,可以更加直观的看到自己对 Git 的掌握程度。

关卡生成器

如果觉得默认提供的关卡不够,还可以使用 build level 命令构建关卡。


它会提供一个对话框将引导完成每个过程,我们可以提交这些关卡,也可以分享给其他同学。


传送门


https://learngitbranching.js.org/?locale=zh_CN&NODEMO=


Github 地址


https://github.com/pcottle/learnGitBranching


除此之外,再给大家推荐另外一个可以和 learnGitBranching 结合使用的开源工具。


这款开源工具的名字叫做 Git Explorer,目前在 Github 上 1.6k 个 star。



这款工具在 Github 上的简介是“无需网络搜索就可以找到正确的 Git 命令”。


如果说 learnGitBranching 在可视化方面做的非常贴心,那么 Git Explorer 则更多偏重命令层面理解。


从名称也可以看得出来,它主要就是一款面向 Git 的浏览器,简单来说,你只需要在 Git Explorer 上点击选择你想要的动作,它就可以动态输出相应的命令。


重点是,这些都是正确的命令,就不用上网搜索各种乱七八糟的播客、到处踩坑浪费时间了!



以上图为例,分步选择自己想要的操作:


  1. 想要'添加'

  2. 添加'一个分支'

  3. 添加后'切换到新分支'


然后,它就会动态输出用法命令:


git checkout -b <new name>
复制代码


这个是开发者比较经常会遇到的一种 Git 使用场景。



除此之外,它还有很多更加深入的用法。


比如:


  • cherry-pick

  • configure

  • debug

  • rebase

  • recover

  • ...


下面再看一下稍微复杂一些的用法:



它不仅给出使用命令,还会给出一些用法提示,介绍它如何使用。


因此,Git Explorer 不仅可以作为一款参考工具,日常开发时用来查询命令,还可以作为一款学习 Git 的工具来用。

传送门

Git Explorer


https://gitexplorer.com/


Github 项目地址


https://github.com/summitech/gitexplorer


建议大家有空可以多浏览 Github,有很多好用的开源免费工具。但是,目前 Github 上项目多如牛毛,而且刷榜现在也非常严重,想要找到优质的项目变得越来越难。这里,给大家推荐 Github 上一个非常不错的项目《DevWeekly》,这个项目每周都会精挑细选一些优质的开源项目,涵盖 C++、JAVA、JavaScript、Python、Go 等不同编程语言。此外,还有一些开源工具、优秀的技术文章:


https://github.com/Jackpopc/DevWeekly

发布于: 刚刚阅读数: 3
用户头像

Jackpop

关注

还未添加个人签名 2020-09-16 加入

公众号:平凡而诗意,微信:code_7steps,全网粉丝超20万,技术进阶、优质资源、实用工具,欢迎关注!

评论

发布
暂无评论
这才是Git的正确学习方式!_Jackpop_InfoQ写作社区