程序员宝藏库:gitee.com/sharetech_lee/CS-Books-Store
Git是目前使用比较广泛一款版本控制工具,从事开发工作,很难绕开Git。
因此,关于如何快速学习Git使用一直都是一个经久不衰的话题。
前不久我在另外一篇文章中曾提到Git对初学者不太友好,学习成本较高,还有一些杠精在评论说”如果连Git这一款工具都不会用,就不要从事开发工作了!“
对于这种评论我一般都会选择不回复,总有一些奇葩的人喜欢发表一些奇葩的言论。
我认为,并不是每个人生来就拥有3年或者5年的开发经验,就像人说话也需要一个从不会到会的过程,对于一款工具的使用同样时这样,何况Git相对很多常规工具本身就需要更多的学习成本。
有点扯远了,再回到Git学习的问题上。
有不少同学在使用Git的过程中都会遇到这样那样的问题,因此,关于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
建议大家有空可以多浏览Github,有很多好用的开源免费工具。但是,目前Github上项目多如牛毛,而且刷榜现在也非常严重,想要找到优质的项目变得越来越难。这里,给大家推荐Github上一个非常不错的项目《DevWeekly》,这个项目每周都会精挑细选一些优质的开源项目,涵盖C++、JAVA、JavaScript、Python、Go等不同编程语言。此外,还有一些开源工具、优秀的技术文章:
https://github.com/Jackpopc/DevWeekly