發佈、管理 gist 的命令行工具

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
millenniumdark
论坛版主
帖子: 4159
注册时间: 2005-07-02 14:41
系统: Ubuntu 14.04 (Kylin)
联系:

發佈、管理 gist 的命令行工具

#1

帖子 millenniumdark » 2013-11-09 17:30

https://github.com/weakish/gister

基於github的官方gist客戶端gist.rb,增加如下功能:

- 發佈gist後自動clone gist repo到本地
- 自動將gist的內容添加到本地的代碼搜索索引(基於csearch)
- 自動從github獲取本條gist的元信息(描述、url等),添加到本地的gists.list
- 同步gist.github.com上的改动到本地

依賴:

curl
git
gist.rb https://github.com/defunkt/gist
csearch https://code.google.com/p/codesearch/
jq http://stedolan.github.io/jq/
xsel或者xclip

(如果用xsel, 確保 gist.rb 版本在 v4.1.2 以上,低於這個的gist.rb有bug,無法用 xsel。)

安裝:

代码: 全选

git clone https://github.com/weakish/gister.git
cd gister
sudo rake install
用法:

運行 `gister init` 初始化
運行 `gister sync`獲取你所有的 gists

以後要發佈新gist,則使用 `gister '描述' 文件 ...`。
還有 `gister search 正則`可以檢索所有同步到本地的gist。

如果你在本地修改了gists,也commit了,但是沒網絡,那麼一旦有網後你就可以運行`gister sync`自動同步更改到gist.github.com。
同理,你在gist.github.com上新增、修改、刪除了gist,也可以用`gister sync`同步到本地。


本地的gist存儲結構:

代码: 全选

/path/to/your/gists
|-- gists.list  # gist列表(包括元信息)
|-- repo # 你的gist的git倉庫
|-- tree # 你的gist的working directory
    |-- 123456 # 普通gist
    |-- _123567890 # 在gist.github.com刪除的gist
    |-- ...
`-- .csearchindex # 代碼搜索的索引文件
其他用法見 manpage

代码: 全选

man gister
回复