关于git相关的学习-2

2016-06-24 | 阅读

搭建gitbook服务器

搭建 Node.js环境,开发npm。

直接 brew install node 或者去下载包。

安装GitBook:

$ npm install gitbook-cli -g

创建一个目录,并初始化

cd /home/
$ mkdir gitbook
$ cd gitbook/
$ mkdir demo
$ cd demo/
$ gitbook init

构建,会生成目录_book ,在下面有完整的静态网页.

gitbook build

gitbook init: 初始化书籍目录

gitbook serve: 在编写书籍时启动一个服务器,自动编译&更新内容,并在浏览器中预览

其中,SUMMARY.md 文件中内容的格式如下:

* [Chapter1](chapter1/README.md)
  * [Section1.1](chapter1/section1.1.md)
  * [Section1.2](chapter1/section1.2.md)
* [Chapter2](chapter2/README.md)

当修改了 SUMMARY.md 文件中的内容后,再次使用 gitbook init 以自动生成对应的目录和文件。

通过创建一个 LANGS.md 文件来支持多语言:

* [English](en/)
* [French](fr/)
* [Español](es/)

书籍目录结构创建完成以后,就可以使用 gitbook serve 来编译和预览书籍了

git web

Git 自带一个叫做 GitWeb 的 CGI 脚本

本机可以测试

$ git instaweb --httpd=webrick
[2009-02-21 10:02:21] INFO  WEBrick 1.3.1
[2009-02-21 10:02:21] INFO  ruby 1.8.6 (2008-03-03) [universal-darwin9.0]

这会在 1234 端口开启一个 HTTPD 服务,随之在浏览器中显示该页,十分简单。关闭服务时,只需在原来的命令后面加上 –stop 选项就可以了:

$ git instaweb --httpd=webrick --stop

如果需要为团队或者某个开源项目长期运行 GitWeb,那么 CGI 脚本就要由正常的网页服务来运行。一些 Linux 发行版可以通过 apt 或 yum 安装一个叫做 gitweb 的软件包.

git错误

remote: error: refusing to update checked out branch: refs/heads/master
remote: error: By default, updating the current branch in a non-bare repository
remote: error: is denied, because it will make the index and work tree inconsistent
remote: error: with what you pushed, and will require 'git reset --hard' to match
remote: error: the work tree to HEAD.
remote: error: 

可以通过在remote端,设置git:

git config receive.denyCurrentBranch ignore

然后每次还要再remote端使用命令:

git reset --hard