gitbook
以上所說的都是在本地的操作昏鹃,如何讓別人也可以訪問自己的書籍尚氛,除了自己買域名,還可以利用現(xiàn)有的互聯(lián)網(wǎng)平臺:gitbook.com洞渤、 github.com等
1. 在 gitbook.com 上發(fā)布和管理書籍
需要先注冊 gitbook 賬號阅嘶。可以單獨(dú)注冊载迄,也可以使用 github 賬號關(guān)聯(lián)登錄讯柔。
-
然后先創(chuàng)建一個 Orgnization 。
-
再在這個 Orgnization 里面創(chuàng)建一個 Space护昧。這個就是你的書籍項(xiàng)目了魂迄。
然后就可以在線寫書了~書籍的在線瀏覽地址為:
https://yourorgnizationname.gitbook.io/yourspacename
2. 在 gitbhub上發(fā)布書籍源碼
- 在GitBook項(xiàng)目目錄,如gitbook中惋耙,執(zhí)行如下命令捣炬,創(chuàng)建本地git倉庫:
git init
- 使用文本編輯器,創(chuàng)建名為.gitignore的文件绽榛,內(nèi)容如下:
*~
_book\
.DS_Store
通過.gitignore文件湿酸,本地倉庫將忽略臨時文件和_book文件夾,達(dá)到只保存書籍源碼的目的灭美。
- 現(xiàn)在可以將本地書籍源碼添加到本地git倉庫中了:
git add .
- 添加更新說明
git commit -m '更新說明文字'
- 建立本地倉庫與遠(yuǎn)端倉庫的對應(yīng)關(guān)系
git remote add origin https://遠(yuǎn)程倉庫地址.git
- 將本地倉庫內(nèi)容同步到遠(yuǎn)端倉庫:
git push -u origin master
至此推溃,就完成了將gitbook源碼推送到遠(yuǎn)程倉庫的任務(wù),之后書籍內(nèi)容修改后届腐,執(zhí)行如下操作即可:
git add .
git commit -m '更新說明文字'
git push -u origin master
3. 在 github上發(fā)布和管理書籍
需要在原有本地倉庫新建一個分支铁坎,在這個分支中蜂奸,只保留_book文件夾中的內(nèi)容,然后將這些內(nèi)容推送到遠(yuǎn)程倉庫的pages分支硬萍,啟用pages服務(wù)扩所,最終達(dá)到免費(fèi)發(fā)布電子書的目的。
- 新建分支
git checkout -b gh-pages
新建名為pages的分支襟铭,分支名稱隨意碌奉,但最好能反映出分支的用途。
- 刪除不需要的文件
切換到pages分支后寒砖,我們需要將_books目錄之外的文件都清理掉:
- 刪除不需要的文件
git rm --cached -r .
git clean -df
rm -rf *~
- 添加忽略文件
使用文本編輯器赐劣,創(chuàng)建名為.gitignore的文件,內(nèi)容如下:
- 添加忽略文件
*~
_book
.DS_Store
通過.gitignore文件哩都,本地倉庫將忽略臨時文件和_book文件夾魁兼。
- 復(fù)制_book文件夾到分支根目錄
cp -r _book/* .
- 添加文件
git add .
添加更新說明
git commit -m '更新說明'
推送
git push -u origin gh-pages
現(xiàn)在開啟git托管網(wǎng)站的pages服務(wù)即可。
4. gitbook 與 github 關(guān)聯(lián)同步
新版 gitbook.com 不支持本地版本管理了漠嵌,但是對 github 的集成支持的不錯咐汞。可以通過配置儒鹿,實(shí)現(xiàn)在 github 項(xiàng)目里面提交內(nèi)容化撕,gitbook 平臺會自動同步過去。
- 在 gitbook 平臺里约炎,進(jìn)入要設(shè)置的 space植阴,也就是你的書。
-
點(diǎn)左下角的配置按鈕圾浅,進(jìn)入配置掠手,點(diǎn)擊 Intergrations ,找到 github狸捕。
-
點(diǎn)擊 link you github repository 按鈕喷鸽,根據(jù)向?qū)В卿?github 灸拍,選擇 reposirory做祝,選擇分支,完成綁定和同步株搔。(你還可以選擇是 gitbook 同步 github 剖淀,還是 github 同步 gitbook)
需要注意的是:綁定的 github 倉庫分支里面要是 gitbook 的源碼,也就是那些 md 文件纤房。而不是 build 之后生成的 html 文件。