1、检测本地git版本
该包的使用需要机器上本来就安装git,且git的版本大于等于2.7:
2、利用npm安装包
npm WARN enoent ENOENT: no such file or directory,open '/home/workspace/package.json'
npm WARN workspace No description
npm WARN workspace No repository field.
npm WARN workspace No README data
npm WARN workspace No license field.
npm WARN workspace No description
npm WARN workspace No repository field.
npm WARN workspace No README data
npm WARN workspace No license field.
有警告可以先忽略~
3、编写example
cd ./node_modules/node-git-server/example/
编辑index.js
repos.on('push',(push) => {
console.log('push ' + push.repo + '/' + push.commit
console.log('push ' + push.repo + '/' + push.commit
- ' (' + push.branch + ')'
);
push.accept();
});
repos.on('fetch',(fetch) => {
console.log('fetch ' + fetch.commit);
fetch.accept();
});
repos.listen(port,() => {
console.log(node-git-server running at http://localhost:${port}
)
});
4、运行
5、测试git服务器
由于我的git服务器是在aliyun上跑的,并且绑定了www.beautifulzzzz.com,所以我先在本地新建一个git仓库,并将其推送同步到云端,然后再clone下来来做测试:
可见将本地git仓库同步到云端和普通的git服务器没有区别,简直太简单方便了!!!
同样git clone也比较简单!
6、云端git仓库的位置
在index.js中我们指定git仓库存放在:const repos = new Server('/tmp/repos');目录下
登录远程服务器可以发现在/tmp/repos/目录下存在我们同步的git仓库:(其中beep.git是之前push的一个)