Gitbucket—快速建立自己的Github

GitBucket 是一个用Scala语言编写的类似Github的应用,界面非常相似。它非常容易安装–容易到你只需要把它的war文件扔到tomcat中,然后启动tomcat就直接可以访问了。或者直接java执行它就可以运行了!

现在版本(3.2)的GitBucket提供了下面的基本功能:

公有/私有Git仓库(HTTP和SSH访问,内部已经集成了SSH服务器)

在线查看和编辑仓库代码

·搜索(代码和Issue)

·Wiki

·Issues

·Fork / Pull request

·邮件通知

·活动时间线

·用户管理(管理员)

·用户组(和Github的组织类似)

·LDAP支持

·Gravatar支持

下面的特性讲会在以后的版本中支持:

·网络图

·统计

·观看次数/打星(Watch/Star)

1. 运行gitbucket

上面提到了它可以通过两种方式运行,在 release page 中下载最新的war包,直接使用java -jar gitbucket.war(当然需要1.7以上的JRE环境)就可以运行,可以指定下面几个参数:

--port=[NUMBER] --prefix=[CONTEXTPATH] --host=[HOSTNAME] --gitbucket.home=[DATA_DIR]

如果没有指定–gitbucket.home,它会把数据保存在$HOME/.gitbucket下面,包括用户数据库信息以及repositories。所以只把这个目录备份就可以了,是不是很方便。

2. 配置gitbucket

打开 http://[hostname]:8080/ (如果没有指定 --port 更换端口的话),就可以看到登录界面,输入root/root登录到主界面中。在右上角Account Setting中可以设置新密码、用户信息、SSH公钥等信息,那么首先为这个超级管理员配置一个新的密码吧。

在右上角的Administration里可以添加新的用户/组,设置新的系统信息。系统信息里几个重要的配置项包括:

Base URL:用于重定向、git repository地址等。这个地址需要先设置DNS后配置,是必须要设置的。

Information:站点信息。

Account registration:是否给公众开放账户注册功能。

Default option to create a new repository:默认创建repository是public还是private。其中所有用户和访客都可以读取public repository,而只有collaborator才能读取private repository。

Anonymous access: 是否允许匿名用户访问public repository。选择deny则任何信息必须验证后才能访问。对于企业内部服务,一般选择deny阻止所有匿名用户的访问。

SSH access:是否启用SSH服务,如果使用需要每个用户在自己的User profile中上传自己的public key。另外,可以配置一个SSH服务使用的端口,默认是29418。

LDAP authentication/Notifacation email:不多作介绍了。

3. 使用repository

在创建好自己的用户登录后,左侧的new repository就可以建立新的repository。这里我们用一个README.md来初始化。

完成后就可以看到和github类似的项目首页,代码都可以在线编辑,灰常方便。比如我们来编辑README.md这个markdown语句。

我们可以通过 git clone http://[your-server-ip]:8080/git/[your-username]/[repository-name].git 来克隆这个repository(主页右侧有这个repository的HTTP和SSH的URL提示。)。之后可以通过 git push 上传本地的version。项目首页上有commits, branches和releases的历史回顾,功能很全面。

右侧项目Wiki可以让我们编辑markdown格式的wiki页面,issue可以让其他人提交issues of bugs,而Setting里可以设置我们的collaborators了:

其他先不多说了,gitbucket简单好用,向gitbucket的作者致敬!

posted @ 2017-02-08 10:44  yuwenjing  阅读(1087)  评论(0编辑  收藏  举报