android 人脸识别开源_还没完全掌握Git的流程?这个开源项目用动画的形式来帮你。...

c9efa62274389c6f9756fd2058431143.png

a543f38182fd50935be599cb5d2d90ae.png

README.md

LearnGitBranching是一个git存储库可视化工具,沙箱,以及一系列教育教程和挑战。 它的主要目的是帮助开发人员通过可视化的强大功能来理解git(在命令行上工作时不存在这一点)。 这是通过具有不同级别的游戏来实现的,以熟悉不同的git命令。

您可以将各种命令输入到

LearnGitBranching(LGB)中

当处理命令时,附近的提交树将动态更新以反映每个命令的效果:

1a959f87d8356f25d43a90f510972d69.gif

这种可视化与教程和“关卡”相结合,可以帮助初学者和中级开发人员提高他们的版本控制技能。这里有一个快速演示:

https://pcottle.github.com/learnGitBranching/?demo

或者,您可以在此处正常启动应用程序:

https://pcottle.github.com/learnGitBranching/

沙盒模式

默认情况下,应用程序以“沙箱模式”启动,并且已创建基本存储库。在这里,您可以输入命令并随意使用存储库。请记住,你可以

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

  • reset 以重新开始使用干净的平板(也在级别中工作)

  • git clone 来模拟远程存储库!

沙箱模式可以很好地向朋友展示一些东西,但真正的干货是levels

Levels

键入levels以查看可用的课程/挑战(以及到目前为止您已解决的课程)。每个级别系列旨在教授一些高级git概念,每个级别的选项卡分隔主要的信息世界(如远程存储库与本地)。

对于一些额外的乐趣,有一个“git golf”概念,我们可以跟踪您使用多少命令来解决每个级别。看看你是否能匹配我们的所有记录!

分享永久链接

您可以使用命令URL参数在加载时执行的任意命令集共享LearnGitBranching的链接。您可能还想使用NODEMO url param禁用此案例的介绍对话框;这是一个开始的例子。

Level Builder

您可以使用构建级别命令构建一个level。该对话框将引导您完成整个过程,最后您可以导出级别以获取JSON blob。将其粘贴到一个问题中或直接粘贴到一个问题中,我可以检查它/合并你的更改!你也可以通过让他们运行“导入级别”直接与朋友分享这个级别,或者只是在url params中指定一个gist ID,如下所示:

https://pcottle.github.io/learnGitBranching/?gist_level_id= a84407351f9c9f0cb241

报告错误/未解决问题

报告错误时,尝试在再生错误之前的状态下在JS控制台中运行命令

debug_copyTree()

这可以避免必须复制您用于进入特定状态的所有命令。 (然后我可以使用importTreeNow命令来达到那个确切的状态)

应用程序如何工作/贡献功能

LearnGitBranching是一个非常简单的应用程序(从技术角度来看)。没有后端数据库或任何AJAX请求 - 它是用JavaScript编写的100%客户端应用程序。生产版本(在github.io上)实际上只提供了一些带有一些JS和CSS的HTML页面。剩下的魔力在于JavaScript的9k +行:P

因为应用程序包含大量代码,所以我已将所有内容编写到Nodejs样式的模块中。这些模块与Browserify一起打包,然后以浏览器可以理解的格式发送。

截至2013年12月,我已经将构建过程迁移到使用Grunt>0.4,因为旧版本给很多人带来了麻烦。它现在应该是相当稳固的!

以下是构建的高级过程:

  • 代码被写入需要其他模块的node.js模块中

  • CSS只写入一个样式表(没有大量的样式)

  • 新HTML被写入模板HTML文件(template.index.html)。仅需要新视图

  • 该应用程序是“内置的”,输出:

    • index.html在根目录中

    • ./build目录中的CSS和JS文件

  • 如果正在为生产构建应用程序,则会对这些CSS和JS文件进行哈希处理并运行测试

  • 而已!

因此,如果您在本地构建应用程序,那么只需在repo的根目录中打开index.html即可运行应用程序。很简单

建立自己/贡献功能

为了在应用程序中提供核心功能,您可能希望在提交拉取请求之前至少测试一次更改。这意味着你需要“Grunt.js”构建工具来构建应用程序:

https://gruntjs.com/getting-started

您还需要npm来下载项目的所有依赖项。

一般工作流程/步骤如下:

git clone <your fork of the repo>

cd learnGitBranching

npm install # to install all the node modules I depend on

git checkout -b newAwesomeFeature

vim ./src/js/git/index.js # some changes

grunt fastBuild # skips tests and linting, faster build

# after building you can open up your browser to the index.html

# file generated and see your changes

vim ./src/js/git/index.js # more changes

grunt build # runs tests and lint

git commit -am "My new sweet feature!"

git push

# go online and request a pull

或者,您也可以在预先配置的在线工作区中构建和运行应用程序:

有帮助的Folks

赞扬这些勇敢的灵魂,对我们的沙箱进行广泛测试并发现bug:

  • Nikita Kouevda

  • Maksim Ioffe

  • Dan Miller

以下是帮助翻译的英雄:

  • Jake Chen

  • 우리깃 ("urigit")

  • "bcho"

  • "scientific-coder"

  • "ace-coder"

  • Joël Thieffry

  • Jens Bremmekamp ("nem75")

  • "hilojack"

  • Ming-Hsuan-Tu ("twmht")

  • Mikhail Usov ("mikhailusov")

  • Matias Garcia Isaia ("mgarciaisaia")

  • Marc-Olivier Arsenault ("marcolivierarsenault")

  • Eroany H Leader ("lhyqy5")

  • Honorat ("ahonorat")

  • Vasil Kulakov ("coyl") & Lyubov Agadjanyan ("shayenblue")

  • Aliaksei Berkau ("alexeiberkov")

  • Mizunashi Mana ("mizunashi-mana")

对于那些提出pr的人来说,也是一个巨大的呐喊! 查看我们在贡献者视图中的30多个贡献者

每个报告过一个问题的人都已成功关闭!

往期内容:

开源小工具帮你把代码变成好看的图片

代码编辑器秒变音乐播放器?这款插件你值得拥有。

世界上最简单的人脸识别库

c++写的在终端上的2048游戏

后端接口和文档自动化生成工具

Java全能工具包

终端的Docker管理ui,不用再记各种命令啦

mac录屏显示输入神器keycastr

命令老是记不住?tldr++来帮你

一款全能的下载工具

后端程序员常遇到的面试问题集合

JAVA写的完整的电商系统

Tensorflow使用帮助手册

快来免费认领你的个人ai助理leon

用JS写的windows95操作系统

一个Envoy驱动的下一代Api网关:Gloo

一款功能齐全的客户端( iOS 、Android )研发助手,你值得拥有

YAML, TOML, JSON和HCL格式之间转换的小工具

可视化查看github文件提交记录的小工具

一份详尽的cs技术学习笔记(面试必备)

又双叒叕一个小程序开发框架

对方不想说话,并向你扔来了世界最好的语言的运行时

git commit emoji 使用指南

论如何写出诗一样的代码

【哪里有困难,哪里就有程序员】追踪问题疫苗企业销售数据走向

如何判断程序员正在做什么

为移动端异构计算平台优化的神经网络计算框架

终端json美化工具jq,你值得拥有

命令行终端上看世界杯

基于Three.js的Web3D地球数据可视化库Gio.js

又一个UI相关的前端框架【腾讯出品】

基于Go语言的又一重磅项目

webssh: 基于网页的ssh客户端

可能是最好用的微信机器人开发sdk

使用HTML或Pug交互式创建 PDF 文档

2018 年成為 Web 開發人員的路線圖

计算机科学速成课

ngrok: 内网穿透前后端联调利器

dayjs: 处理时间和日期的 JavaScript 库

G6: JavaScript 图可视化引擎

vividjs: 一个易用的svg库

JavaScript 算法与数据结构

UETool: 饿了么打造的可视化设计调试工具

proxyee-down: 百度云下载神器

Taro: 用 React 的开发方式开发小程序

Octotree: Github看代码必备神器

gtop: 一个用node写的界面美丽的终端监控软件

Httpie: 现代Http命令行客户端

可能是最好用的php管理后台生成工具(10分钟极速生成)

面向程序员的优质代码库清单

腾讯开源作品整理

前端信息源集锦

前端开发清单

后端架构师技术图谱

nodejs之父ry推出新一代的node:deno

f20ea037947749161ae846272769707e.gif

欢迎小伙伴后台留言推荐好的Github项目:)

我们会对项目进行:

Readme的中文翻译简化

项目内容扩展

源码解读

等等

如果觉得好看或对您有帮助记得点好看

欢迎分享给朋友或朋友圈~~

您的鼓励是我们持续更新的动力

9ced7e9878168851d24765f91611bdb5.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值