大年初一我还在写代码 :)
其实是这样的,我们学校的奇葩网络是算流量的,每个月 30 块,9G 流量,用完限速 20k/s。所以我每次 npm install
和 bower install
的时候都很心痛 =。=
所以我才造了 Sopa 这个轮子,是一个本地版的 bower。它的原理是你在某个 folder 里 $ sopa pull
一些静态文件,然后在其它目录里 $ sopa install
的时候直接从这个 folder 取 package.
举个栗子:
安装 npm install sopa -g
首次用 Sopa 需要先设置一个存 package 的目录,比如$ sopa set-dir ~/sopa_components
。
我现在想 pull 一个 angular 下来,$ sopa pull
的用法是 $ sopa pull [email protected]@type fileURL
。
packageName
是这个 package 的名字,由你自己定,当 pull 下来以后当你需要 install 的时候就以这个名字来 install。
x.y.z 是版本号,type 是类型,分 js 和 css。
fileURL 一般是文件是地址,我一般从 cdnjs 上面 copy 下来。
所以这里要 pull angular 的话,我是先从 cdnjs 找到 angular 的 cdn url,然后 copy:
$ sopa pull [email protected]@js //cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.13/angular.min.js
这样就成功 pull 下来了。。
现在在另一个文件夹里 install:
$ sopa install [email protected]@js javascripts
后面的 javascripts
是你要把他 install 到哪个文件夹,这里就是 install 到 javascripts 里,这个随你定。
如果你想看你 pull 过的 package, 你可以 $ sopa ls
。
如果你想看某个 package 有哪些 pull 过的版本,你可以 $ sopa ls thepackage
。
开源在 Github: https://github.com/djyde/sopa
主要是写给自己用,如果同时能帮助到你,请告诉我,我会非常高兴 :)
1
kawaiiushio 2015-02-20 14:02:02 +08:00 via iPhone
沙发支持大神
|
2
viko16 2015-02-20 14:12:58 +08:00 via Android
看了学校状况怎么那么眼熟,一看楼主发现是熟人2333…
|
3
djyde OP @viko16 2333 我还给你发过 pull request 呢。。。话说我私信了网协部长说想搞个内网 cnpm,他没鸟我。。。
|
7
msg7086 2015-02-20 14:36:53 +08:00
真诚地建议不要用SOPA这个词。
这个词曾经吵得沸沸扬扬的。 |
12
Sunnyyoung 2015-02-20 19:41:01 +08:00
@viko16 我不同意,嘿嘿
|