说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

专访JS-Git创始人Tim Caswell:让Git运行于任一平台

HTML文档下载 WORD文档下载 PDF文档下载
JS-Git是一款采用JavaScript实现Git核心功能,并且保证其能在多个平台上可以运行的开源项目。目前,CSDN记者采访了其创始人Tim Caswell,让他来分享JS-Git项目的开发经历。

之前,CSDN研发频道的曾推荐一款纯JavaScript实现Git客户端和服务器端的开源项目——JS-Git,该软件的主要目标是让用户能够在每一个平台上使用Git。

JS-Git并不是单纯的克隆Git的所有功能,它只是实现Git的核心功能,取其精华,并且添加了一些更加灵活的功能。该项目的另一个目标是构建一个可以让儿童编程的开发环境。

项目介绍:https://www.bountysource.com/fundraisers/325-js-git

项目托管地址:https://github.com/creationix/js-git

CSDN记者采访了JS-Git作者Tim Caswell,让他来给大家详细介绍一下JS-Git项目背后的故事。


Tim Caswell

CSDN:请您先介绍一下自己的编程经历。

Tim:编程只是我的业余爱好,编程可以给我带来很多快乐。在80年代的时候,我在Commodore64上编写一些简单的程序,当互联网蹦出来以后,我就开始编写网页程序。最终,我得到了一些关于PHP、Ruby、Python和Node.js等方面的工作。现在,我会开发一些新东西,比如JS-Git。

CSDN:分享一下JS-Git背后的开发故事,最初为何要创建这个项目?

Tim:实际上,我的职业是教师,我喜爱教孩子们编程,但大多数孩子并未接触到真正的开发工具。JS-Git可以运行在笔记本、平板电脑、手机、Chromebook等任何可以运行浏览器的设备上。

CSDN:JS-Git的设计目标是什么?

Tim:JS-Git旨在实现Git的核心功能,并且尽可能地在可以运行JavaScript的平台上运行。存储和网络bits都是可插式的,可以创建出各种有趣的组合。

CSDN:相比较Git,JS-Git有哪些优势?

Tim:在运行方面,JS-Git要比Git更加灵活,当然,它也可以以Git工作流的方式来构建产品,而不是代码编辑。Git为应用创建了很好的资料库,包括基于文档的数据并且进行同步。

CSDN:起初,有多少人参与JS-Git的开发,你们是如何协作的?

Tim:起初,只有我一个人参与项目开发,几个月后,有一些开源志愿者加入进来。Chris Dickinson在早期做了不少东西,最近,Aaron Powell为JS-Git实现IndexedDB适配器帮了不少忙。

CSDN:在开发过程中,遇到过什么困难,你们是如何解决这些难题?

Tim:迄今为止,最难的部分是找到合适的抽象和API以保证代码可以很好地进行模块化,并且可以在更广泛的平台上工作。即使是一些简单的东西,比如模块、二进制数据、持久性以及跨越多平台的网络接入等。目前,这些问题还未得到很好地解决,我们在探寻最佳的解决方案。

CSDN:你为什么想去构建一个教孩子编程的环境?对此你有什么计划?

Tim:当我还是孩子的时候,我已经开始学习编程了。与以往任何时候相比,现在的编程机会更多,也更需要程序员。但是在大多数消费级设备上,这些编程工具表现得很糟糕,我想去解决这一问题。

我的计划是在JS-Git开发完成后,创建一个针对孩子的学习型IDE。现在我已经开始一部分工作了,比如创建了一个编辑框的演示。

CSDN:JS-Git适用于哪些项目? 

Tim:JS-Git非常适合基于文档的项目。我有一个想法——创建一个图书馆项目,也可以是一个基于JS-Git的移动App,如果图书发布更新,一个简单的git fetch操作就可以获取所有更新的图书内容,你也可以将资源克隆到本地,以便能够离线阅读。

同时这个项目也可以用于示例文档,或者帮助社区用户创建能够共享的内容,这会对使用git的数据模型带来极大的好处。当然,JS-Git也可以用于创建在线IDE。

CSDN:对于JS-Git,未来你有什么计划和目标?正如我们所知道的,JS-Git已经成功进行了第二次筹款,这对于今后的工作有什么帮助?

Tim:目前我主要工作重心是发布首个里程碑版本。如果发布后,我缺钱了,就需要找个工作来赚钱支撑JS-Git的开发。对于JS-Git,我没有具体的计划,我只是首先想把它完成。

CSDN:对于使用JS-Git的开发者,你有什么建议?

Tim:我已经将JS-Git用于我开发的一些Web应用程序中,以便测试它的功能性。事实上,JS-Git使得构建离线应用非常容易。

【开源专访】系列文章致力于对国内外优秀开源项目作者、团队的专访,挖掘项目背后的故事和更多技术细节,以及对项目的宣传、推广。同时,我们也希望广大开源开发者和爱好者自荐或推荐更多优秀的开源项目。欢迎留言或@CSDN研发频道。

赶时髦?Facebook CEO 2013年将领取1美元年薪 蓝港在线CEO王峰:我在网络游戏行业十年从业记 CMDN Club 27期:从儿童音乐教育到移动碎片化管理 聚焦全球移动市场——你所不知道的俄罗斯 MemSQL:号称世界上最快的内存-关系型数据库 兼容MySQL但快30倍 PC衰落 Intel转投Google挖掘移动市场潜力 移动周报:500元体感、精确到0.01毫米的Leap Motion TUP第29期:王淮、龚世海谈如何打造优秀的技术团队 一网打尽13款开源Java大数据工具,从理论到实践的剖析 从用户体验的善与恶说起,做用户爱“玩”的教育应用 三大主流开源硬件对比:Arduino vs BeagleBone vs Raspberry Pi “BlackBerry 10移动应用开发大赛”应用推荐 Java程序优化的一些最佳实践 Heka:Go编写,来自Mozilla,高效、灵活的插件式数据挖掘工具 Anchora鲁为民:PaaS是我的兴趣 次世代IDE Light Table 0.4发布 带来众多更新和改进 别再设计易碎的Web API! LinkedIn:55人支持2700位员工,2亿用户的大数据分析 Brian Krzanich是谁?这位新CEO预示英特尔未来怎样? HTML5开发者心声:浏览器兼容性成最大问题 传微软6月下旬将发布第二代Surface 7到9英寸全有 Turbulenz:HTML5 2D和3D游戏引擎开源 携程开放平台总经理夏天:内容+高转化率成就开发者 直接拿来用!最火的Android开源项目(一) Qunar 谌振宇:旅游行业的移动化如何布局? 大数据分析“铁三角”: Teradata数据仓库、Teradata Aster与Hadoop Teradata专业服务:打造行业企业的“数据科学家” Xamarin Evolve 2013:竭尽全力让C#服务iOS与Android 史上最全!57个Web框架4轮横向对比 回顾银行数据的可用性和一致性历史 Qubole:托管在AWS平台上的Hive服务 繁体版的软件选什么字体? 关于虚拟主机的问题 DELPHI7带了一个挺不错的工具:ModalMake 6.2 如何得到文件控件中的值? SOS!!!在线等待,立即给分 关于密匙的问题? 关于Kylix unix系统有中间件吗? 架設smtp的問題??? FastNet组件 怎样在sql语句中进行数据转换啊 在线等 ,,,怎样获得汉字的编旁 在程序中用函数设置session的时效、存放路径 如何在ms-dos下降低cpu的运行速度?(汇编,C高手请进) 求解决链表问题 请教:如何在linux嵌入系统中编写外设驱动程序.谢谢 Micrsoft JDK nmake生成的EXE文件反编译问题!!! 多态问题 专业调查:军训练什么,学到什么!!????? 使用IS for Delphi 4制作安装盘.安装时时出现401号错误(字符串变量不够长) 介绍几本VC入门的好书 大家谈谈,数据库应用程序如何设计及使用类! Oracle的登录问题! 请问如何在VC中取得传入的参数? 现在的浏览器还支持不支持applet啊?高手救我!--------怎么写一个applet兼容更多的浏览器? 请问那里有这种工具??近来看看!! 请capboy等写过filter的各位前辈指点 利用DW制作一张确定最佳分辨率为800*600或者1024*768的页面, 急 求助: 怎样获得系统当前可用的字体? 如何打印FormView? 如果你是VC高手,对COM有深入了解,欢迎! 我今天看了我英语过级的公布成绩,我得了一个天险数字60。5分,请问。。。。。? 谁有linux下的mod_webapp.so DW UltraDev里rs.source="select * from stu where banci=request.QueryString("banci")这样是不是不行? Microsoft JDK nmake生成的EXE文件反编译问题!!! 各位大虾:请问谁能告诉我哪里能找到win xp home edition plus???如果能让我找到,送1000分 请问如何将PaintBox.Canvas的当前内容保存至内存, Linux下c语言程序该怎样运行? 请问:vb.net中oracle数据库能否支持blob格式? .ceb文件如何打开? 什么地方能够找到《Exploring Requiremengs:Quality Before Design》这本书? 关于制作一个classwizard的设计思路,欢迎大家讨论 weblogic server console: java.lang.NullpointerException 如何得到本局域网上所有主机的ip? 请问: 如果在网上可以通过网页上传某些文件到服务器空间上,并显示一些关于上传文件的信息~ 一段检测光软驱的程序,大家帮忙除Bug! 为何会死机? 高分放送,木马病毒求救! tomcat下的分布怎么做? 各位使用手机的老鸟,2000左右的手机什么牌子的好 喜欢硬件朋友请进来看看。 草履虫从细胞膜到核膜,一共有几层膜分别是哪几层 下例物质在一定条件下能跟甲烷发生取代反应的是氧气,氯化钠,溴水,氯气 Y 由120个碱基组成的DNA分子片段,可因其碱基对组成和序列的不同而携带不同的遗传信息,其种类数量最多...Y 由120个碱基组成的DNA分子片段,可因其碱基对组成和序列的不同而携带不同的遗传信 目前我国有哪些法律法规给未成年人以特殊的保护? 请帮忙分析句子句法结构.特别是句子的"nothing...less than"nothing gets people talking than child rearing is anything less than a completely fulfilling,life-enriching experience. 由120个碱基组成的DNA分子片段,可因其碱基对组成和序列的不同而携带不同的遗传信息,其数量最多可达多少 在循环水系统中钝化后的碳钢管道在正式运行前还需要进行预膜吗 可降解塑料餐盒化学成分 120个碱基组成的DNA分子片段,可因其碱基对组成的序列不同而携带不同的遗传信息,其种类数最多可达()A 4120 B 1204 C 460 D 604000请给出具体步骤 如下就是案例.热电厂循环水处理之预膜处理步骤详情咨询北京邦驰世纪水处理科技有限公司 可降解塑料餐盒怎么加工 反渗透水处理原理有什么呢么? 循环水预膜时钙离子为什么要大于50PPM? 已知某基因片段碱基排列如右下图所示.由它控制合成的多肽中含有“-脯氨酸-谷氨酸-谷氨酸-赖氨酸-”的氨基酸序列.(脯氨酸的密码子是:CCU,CCC,CCA,CCG;谷氨酸的是GAA,GAG,;赖氨酸的是AAA,AAG 一个长方体沙坑占地10平方米,在坑内铺5立方米沙,能铺多厚?(用方程解) 草履虫是通过什么与环境进行物质交换? 细胞内某一DNA片段中有30%的碱基为A,则该片段中( )A.G的含量为30% B.U的含量为30% C.嘌呤含量为50% D 嘧啶含量为40% 学校运来7.35立方米的沙土要铺在长6米宽3.5米的跳远沙坑里能铺多厚 (方程解)最多等一小时. 能体现汉字谐音特点的古诗有什么 夹胶玻璃怎么制作? 春天的太阳比冬天的太阳有什么变化 4HCl+O2=2Cl2+2H2O,在CuO/CuCl2,400℃的条件.该反应的热化学方程式 . 2.某DNA分子片段中碱基为2400对,则由此片段所控制合成的多肽链中,最多有氨基酸( )种A.800 B.400 C.200 D.20 从冬天到春天北斗七星的位置会发生什么变化 可逆反应2Cl2(g)+2H2O(g) 4HCl(g)+O2(g); ΔH 夹胶玻璃气泡怎么处理? 从春天到冬天北斗七星有什么变化11111111 把九立方米的沙垫在一个长5米,宽4米得沙坑里,可以垫多厚? 钢化夹胶玻璃制作工艺详细过程文字叙述 星空从冬到春的变化 一个沙坑长5米,宽4米.往里放入4立方米的沙子可以垫多厚 人常说的;关中地区具体是指哪个地方啊?在咱们中国关中是在哪个地方?我上次听人讲,我听的不是很清楚,能否帮我解答在西北的那里? 1.乙烯与溴蒸汽发生的是加成反应吗?2.甲烷能和纯液溴发生取代吗?3.乙烯与纯液溴发生的是加成反应吗?1.乙烯与溴蒸汽发生的是加成反应吗?2.甲烷能和纯液溴发生取代吗?3.乙烯与纯液溴发生 一个沙坑长5米,宽4米,往里放入4立方米的沙子,可以垫多厚? 人是条命 动物也是 为什么人可以杀动物 而杀人就会那么害怕? 用边长3分米的方砖铺一块地需要500块,换成面积是25平方分米的方砖铺这块地需要多 有黄沙4立方米,把它垫在长5米,宽4米的沙坑里,可以垫后多少米? 人也是动物,为什么人杀人要判死刑呢? 烷烃的熔点沸点一般较低是吗?我是根据有机物的性质推断的`` 厅的墙我想做成镜面的玻璃幕墙,请问费用要多少啊?我在沈阳,我家厅一侧的墙体我想做成镜面的玻璃幕墙,深灰兰色那种吧,面积是2.5米*4.2米,中间带一个正常的门,推开的,或者平开的门都行,大 动物也是生命,人为什么要杀它们谢谢了, 大自然是怎样变化的 小孩子早熟怎么办? 换个手机玻璃多少钱? C4H10同分异构体的结构简式【包括醇和醚】 最能体现汉字中文特点的首推中国的古典诗词,一个中国孩子在很小时候就能背诵的古典诗词:冬天下雪时吟“_________________,___________________”思念家乡时吟“_________________,___________________” 玻璃险多少钱 c4h10的同分异构体为啥不是三种同分异构体?直链,支链加环状.为嘛环状不算它的同分异构体? 一个长方体的游泳池长50m,宽20m,深2m,要在四周和池底抹一层水泥,每平方米需要3千克水泥,需要多少水泥算式过程写出来 中国有多少个简体中文汉字? 氧化汞HgO-点燃-Hg+O2(小2)为什么不是2Hg+02(小2)氧化汞点燃为什么不是2Hg+02(小2)或者Hg+O 怎么会是一个汞原子和2个氧原子 在汉字与中国古典诗词中,作者对汉字是一种什么样的情感 CO和H2的混合气体中含有少量CO2和水蒸气,可按下列实验步骤,证明CO和H2的存在:(1)将混合气体首先通过① ,目的是② ;(2)将由(1)得到气体,继续通过① ,实验中观察到 关于冬天变化的作文要有人,植物等的变化 草履虫的表膜是细胞膜么 人类的利益不应该建立在动物的生命上.我总是觉得人类不应该吃动物.但却没人认同.你们觉得呢? 由100个碱基组成的DNA分子片段,最多可构成多少种遗传信息麻烦说明原因,A.4的100次方B100的四次方C50的四次方D4的50次方,麻烦说明原因哦, 草履虫的细胞膜又称什么,其功能是什么 动物也是生命,为什么要吃动物的肉?如果有一天 老虎是地球的主人 那它也会吃人类吗? 由120个碱基组成的DNA分子片段,可因其碱基对组成和序列的不同而携带不同的遗传信息,其种类数量最多可达A.4120 B.1204 C.460 D.604
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘