這是一本關(guān)于GitHub的書,在線閱讀請訪問: http://www.worldhello.net/gotgithub 。
動筆寫GitHub不是因?yàn)槲覍ζ淞私?,恰恰是對其太不了解。在我寫?《Git權(quán)威指南》 一書中,涉及到GitHub的只有區(qū)區(qū)三頁紙,這顯然回答不了讀者對于GitHub的諸多疑問。
這本書采用Creative Commons協(xié)議發(fā)布,并托管在GitHub上,意味著您可以免費(fèi)閱讀并可以用GitHub特有的方式參與本書的維護(hù)。
如何離線閱讀
項目 gotgit/gotgithub 的版本庫中的 gh-pages 分支保存著本書編譯后的頁面,意味著您只要下載版本庫并檢出 gh-pages 分支即可在本地瀏覽。
-
克隆版本庫。
$ git clone git://github.com/gotgit/gotgithub.git
-
檢出
gh-pages分支。$ cd gotgithub $ git checkout gh-pages
用瀏覽器打開
index.html即可離線閱讀。
因分支 gh-pages 的提交歷史可能會周期性刪除或壓縮合并,為避免執(zhí)行 git pull 更新分支時造成困惑,請對本地版本庫進(jìn)行如下設(shè)置。
$ git config --add remote.origin.fetch +refs/heads/gh-pages:refs/heads/gh-pages
如何編譯
預(yù)備
-
Python, docutils
本書使用 reStructuredText 格式撰寫,格式解析依賴 Python 和 docutils 包。
-
Sphinx
用 Sphinx 工具進(jìn)行編譯。編譯前先確認(rèn)已經(jīng)安裝 Python、docutils 及 sphinx。
-
ImageMagick 及 Inkscape
本書圖片矢量圖采用 Inkscape 繪制,位圖處理采用 GIMP 。上述格式圖片在網(wǎng)頁顯示需要格式轉(zhuǎn)換,格式轉(zhuǎn)換需用到 ImageMagick 和 Inkscape。
-
Git
不解釋。
克隆版本庫(本書書稿及圖片)
本書用兩個版本庫維護(hù):
本書的圖片版本庫以子模組形式關(guān)聯(lián)到書稿版本庫,運(yùn)行下面命令執(zhí)行克?。?/p>
-
若尚未克隆書稿版本庫,先克隆書稿版本庫。
$ git clone git://github.com/gotgit/gotgithub.git $ cd gotgithub
-
默認(rèn)檢出
master分支。如果當(dāng)前非master分支,執(zhí)行下面命令檢出分支。$ git checkout master
-
通過子模組更新命令克隆子模組版本庫(即保存圖片的版本庫)并檢出。
$ git submodule init $ git submodule update
編譯書稿
確保安裝了 Sphinx、ImageMagick、Inkscape。編譯本書使用命令:
$ make html
編譯后的網(wǎng)頁位于 _build/html 目錄下。
更多的格式輸出參見下面的命令輸出:
$ make
如何貢獻(xiàn)
請采用GitHub方式貢獻(xiàn)。
創(chuàng)建派生項目。即 Fork。
修改您覺得不滿意的地方。修改后推送到您創(chuàng)建的分支版本庫中。
通過 GitHub 向我發(fā)送 Pull Request。
-- 蔣鑫, http://weibo.com/gotgit/
