Git开源工具Hesokuri、Git LFS、deploy-robot、NodeGit介绍

以下为你介绍的Git开源工具都可用在Linux系统上:Hesokuri(分布式 Git 同步工具)、Git LFS(Git 的大文件支持)、deploy-robot(部署机器人)、NodeGit(Git 的 Node 开发包)。

1、Hesokuri(分布式 Git 同步工具)

Hesokuri 是使用 Clojure 编写的分布式 Git 库同步工具。

2、Git LFS(Git 的大文件支持)

Git开源工具Hesokuri、Git LFS、deploy-robot、NodeGit介绍

Git LFS 是 Github 开发的一个 Git 的扩展,用于实现 Git 对大文件的支持。

安装:

1]、从二进制

二进制软件包包括一个脚本,该脚本将:

将Git LFS二进制文件安装到系统$PATH。

运行git lfs install执行所需的全局配置更改。

$ ./install.sh

2]、从来源

将git-lfs二进制文件放在系统的可执行文件$PATH或等效文件中。

Git LFS需要每台机器更改一次全局配置,可以通过运行以下命令来完成:

$ git lfs install

用法示例:

要在尚未为Git LFS配置的Git存储库中开始使用Git LFS,可以指明要管理Git LFS的文件,这可以通过在Git存储库中运行以下命令来完成:

$ git lfs track "*.psd"

(* .psd是您要跟踪的文件名的模式)。

注意:模式周围的引号对防止glob模式被壳扩展很重要。

在对git-lfs-track(1)或git-lfs-untrack(1)进行任何调用之后,您都必须将更改提交到.gitattributes文件。可以通过运行以下命令来完成:

$ git add .gitattributes

$ git commit -m "track *.psd files using Git LFS"

现在,您可以照常与Git存储库进行交互,Git LFS将负责管理大文件。例如,更改名为my.psd的文件(上面通过* .psd跟踪):

$ git add my.psd

$ git commit -m "add psd"

提示:如果您的存储库历史记录中已有大文件,则git lfs track不会追溯跟踪它们。要迁移历史记录中的现有大文件以使用Git LFS,请使用git lfs migration。例如:

$ git lfs migrate import --include="*.psd"

您可以确认Git LFS正在管理PSD文件:

$ git lfs ls-files

3c2f7aedfb * my.psd

完成提交后,将文件推送到Git远程:

$ git push origin master

Uploading LFS objects: 100% (1/1), 810 B, 1.2 KB/s

# ...

To https://github.com/git-lfs/git-lfs-test

67fcf6a..47b2002  master -> master

注意:Git LFS在Linux上至少需要Git 1.8.2,在macOS上至少需要1.8.5。

下载地址:https://github.com/git-lfs/git-lfs

3、deploy-robot(部署机器人)

deploy-robot 是 SegmentFault 出品的 Github 自动部署机器人,将你从繁冗的部署工作中解放出来,让你的部署流程更加自动化。

特点:

与 GitHub 深度整合,利用 GitHub API 读取相关部署指令,并及时反馈部署情况。

与人工部署不同的是,自动部署不会疲劳,也不会喊累,你永远可以不停地折腾它。

使用方法:

执行以下命令安装:

npm install -g deploy-robot

使用以下命令启动脚本:

deploy-robot -c config.json

config.json 文件:

参考目录下的 config.json.sample 文件:

{

"username": "",     // 用户名

"password": "",     // token,去 user/settings 申请

"repos":

[          // 需要监听地 repo 列表

{            "user": "xxx",      // repo 所属用户名

"name": "xxx",      // repo 名

"labels": "xxx",    // 指定 issue 的 label

"command": "xxx",   // 上线脚本的命令

"confirm": null     // 上线是否需要某人的确认, 默认为空

}

]

}

提交上线请求:

Git开源工具Hesokuri、Git LFS、deploy-robot、NodeGit介绍

下载地址:https://github.com/SegmentFault/deploy-robot

4、NodeGit(Git 的 Node 开发包)

NodeGit 是 libgit2 的 Node.js 绑定版本。

示例代码:

var Git = require("nodegit");

//clone

Git.Clone("http://git.oschina.net/ld/J2Cache.git", "tmp").then(function(repository) {

});

//open 

Git.Repository.open("tmp").then(function(repository) {

});

安装:

NodeGit可以在大多数开箱即用的系统上运行,而无需任何本地依赖项:

npm install nodegit

如果您收到有关libstdc++的错误(在Travis-CI上构建时通常会遇到这种错误),则可以通过升级到最新的libstdc++-4.9来解决此问题。

Ubuntu平台就运行以下命令:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test

sudo apt-get update

sudo apt-get install libstdc++-4.9-dev

下载地址:https://github.com/nodegit/nodegit

注明

以上就是Git开源工具Hesokuri、Git LFS、deploy-robot、NodeGit的介绍内容,这些Git开源工具都能使用在Linux操作系统中。

栏目相关文章