JS-GitJavaScript實(shí)現(xiàn)的Git項(xiàng)目
JS-Git是一款使用純JavaScript實(shí)現(xiàn)Git客戶端和服務(wù)器端的開源項(xiàng)目。其主要采用模塊化設(shè)計(jì),可以運(yùn)行在任何可以運(yùn)行JavaScript的平臺(tái)上。
為什么要使用JavaScript重新實(shí)現(xiàn)Git?
JavaScript要比其它任何語(yǔ)言都意義深遠(yuǎn),它可以運(yùn)行在筆記本、平板電腦、手機(jī)、Chromebook等任何可以運(yùn)行瀏覽器的設(shè)備上。而Git是一個(gè)開源的分布式版本控制系統(tǒng),用以有效、高速的處理從很小到非常大的項(xiàng)目版本管理,是一款非常棒的工具。
目標(biāo)平臺(tái)
該項(xiàng)目的目標(biāo)是希望它能夠在每一個(gè)平臺(tái)上運(yùn)行,包括:
- ChromeOS App
- Firefox OS App
- Windows RT WinJS App
- HTML5 Web App(在所有現(xiàn)代瀏覽器上,包括IE 10)
- PhoneGap App
- 桌面Chrome App
- 以及其它在JavaScript里支持網(wǎng)絡(luò)訪問(wèn)、持久存儲(chǔ)和二進(jìn)制的應(yīng)用
功能目標(biāo)
項(xiàng)目開發(fā)者并不打算完全克隆Git的所有功能,其主要目標(biāo)是保留90%有趣的功能:
- 通過(guò)HTTP、Git或SSH來(lái)克隆遠(yuǎn)程存儲(chǔ)庫(kù)到本地存儲(chǔ)
- 離線制定和提交本地變化
- 離線管理tag和分支
- 備份到遠(yuǎn)程存儲(chǔ)倉(cāng)庫(kù)
- 通過(guò)HTTP、Git或SSH服務(wù)Git倉(cāng)庫(kù)
- 盡量模塊化,可以供任何軟件使用
讓兒童編程
該項(xiàng)目的另一個(gè)宗旨是構(gòu)建一個(gè)可以讓兒童編程的開發(fā)環(huán)境,目前,很多年輕人都在玩平板電腦或Chromebook,但并沒(méi)有什么合理的方式教他們編程,因此,我想改變這種狀況并且開發(fā)一些工具,讓他們可以成為一名非常專業(yè)的程序員。
在Chrome App里運(yùn)行JS-GIT
使用js-git-app測(cè)試代碼。
把JS-Git作為Node.JS CLI工具使用
該示例使用的應(yīng)用程序是js-git-node。
該CLI工具能更換Git命令行工具的一個(gè)子集。這對(duì)基于Node.js的平臺(tái)非常實(shí)用,但它不易安裝Git。
介紹內(nèi)容來(lái)自 iteye
