类似github的框架
github是程序员经常上的网站,但如果是在一家苦逼不能访问外网的公司,那不能把自己的代码托管在github上绝对是一件非常痛苦的事情。如果想要在公司内网也可以用github托管自己的代码,那就要自己搭建类似github的服务器,好在类似github的框架有很多,基本上都是基于git的,可以无缝衔接github而无需额外学习其他技术。
github企业版
github enterprise,如果你的基金充足,github企业版绝对是你的首选。它基本上包涵了现有github网站上面的一切功能,你使用它甚至在视觉上都不会发生任何变化,界面都是和现有github一样的。而且安装十分方便,安装文件就是一个虚拟机镜像文件,只要用虚拟机加载就可以了。但刚才说了“如果你的基金充足”,说明它是要收费的,而且价格不菲,1个20人团队的license每年要5000美刀。国外有用到github企业版的公司有Bizzard(玩游戏的都知道),国内用的很少,我了解到的只有豆瓣在用,而且只用在其中一个或几个项目组(PS:豆瓣好像有自己的代码托管工具叫豆瓣Code,克隆github且增加了自己的特性)。
gitlab
gitlab,是用Ruby On Rails开发的一款开源代码托管框架,界面也是仿照github设计的,github用户可以快速上手,最重要的是它是一个开源的软件,这意味着你可以免费获取到软件,并将它部署到自己的机器上。但是gitlab的安装过程比较复杂,安装需要依赖以下几个工具:
- ruby 1.9.3+
- git 1.7.10+
- redis 2.0+
- MySQL or PostgreSQL
另外gitlab的markdown文件显示功能不是很好,比如markdown中的table和嵌入html在github上面是可以正常显示,但是在gitlab上面就不行。
GitBucket
GitBucket,是一个用scala写的高仿github的代码托管框架。这个框架是今年才开发的,目前功能还不是很齐全,数据库也是用的内存数据库,但是github上面的基本功能都有。它的一个最重要的特点是安装非常方便,只需要下载gitbucket最新版本的war包,然后放到随便哪个web容器(Jetty,Tomcat)就可以启起来了,想尝尝鲜的同学可以试用一下。
其他框架
下面列举一些其他类似的框架,没怎么用过不好做评价,下面的括号表示用哪种语言写的。
这里也有一篇文章是介绍类似github框架的框架,看这里。
类似github的框架的更多相关文章
- gitHub项目框架使用排名
项目名称 项目简介 使用心得 1. react-native 这 个是 Facebook 在 React ...
- iOS之github第三方框架(持续更新)
1.MBProgressHUD MBProgressHUD是一个开源项目,实现了很多种样式的提示框 使用上简单.方便,并且可以对显示的内容进行自定义,功能很强大,很多项目中都有使用到. 到Github ...
- 使用Github+Hexo框架搭建部署自己的博客
前言 Hexo 是一个快速.简洁且高效的博客框架.Hexo 使用 Markdown (或其他渲染引擎 )解析文章, 在几秒内,即可利用靓丽的主题生成静态网页. 安装 安装前提 安装 Hexo 相当简单 ...
- android 图片网络下载github开源框架之Universal-Image-Loader
最近在做妙趣剪纸项目,剪纸应用项目链接.发扬传统文化,大家多多关注. 需要自己搭建服务器,我用的是新浪sae,简直秒杀京东云几条街,把图片放在网上下载,但是图片经常下载要遇到很多问题,包括oom等.所 ...
- [百度地图] 用于类似 DWZ UI 框架的 百度地图 功能封装类 [MultiZMap.js] 实例源码
MultiZMap 功能说明 MultiZMap.js 本类方法功能大多使用 prototype 原型 实现,它是 ZMap 的多加载版本,主要用于类似 DWZ 这个 多标签的 UI 的框架: 包含的 ...
- 元素视差方向移动jQuery插件-类似github 404页面效果
原文地址:http://www.xuanfengge.com/shake.html 前言: 视差滚动,大家也许并不陌生.但是对于视差方向移动,你是否有见过效果呢?看官请进来瞧瞧~ demo : 轩枫阁 ...
- 使用pjax实现类似github无刷新更改页面url
pjax=pushState+ajax,相信用过github的同学都知道,github部分页面采用了pjax这个项目来实现ajax无刷新加载的同时改变页面url.一起来学习一下这个插件吧. 我们都知道 ...
- github(其他类似github)下载到本地配置
首先是先装完插件,低版本的myeclipse要自己装插件, 如何使window->show view->other找到git 注意是选第二个... 然后next->next-> ...
- 利用jdbc简单封装一个小框架(类似DBUtils)
利用jdbc写的一个类似DBUtils的框架 package com.jdbc.orm.dbutils; import java.io.IOException; import java.io.Inpu ...
随机推荐
- python网络编程socket之多进程
#coding:utf-8 __author__ = 'similarface' import os,socket,threading,SocketServer SERVER_HOST='localh ...
- Lua 栈中元素的位置
Lua与C.C#等的交互是通过栈来实现的,每次插入元素都是放在栈顶(top),至于元素的index,可以使用正数和负数两种方式, 如取栈底开始至第index个元素 -index = gettop - ...
- base64 数据处理
base64 数据处理 1. base64 字母表 2. 原理 处理原理 http://baike.baidu.com/view/469071.htm 3. iOS上的应用 iOS7 之前使用http ...
- [翻译]了解ASP.NET底层架构(八)
原文地址:http://www.cnblogs.com/tmfc/archive/2006/09/04/493304.html [翻译]了解ASP.NET底层架构(完) [翻译]了解ASP.NET底层 ...
- div布局
Margin: Margin属性用于设置两个元素之间的距离. Padding: Padding属性用于设置一个元素的边框与其内容的距离. Clear: 使用Float属性设置一行有多个DIV后(多列) ...
- 1106c语言语法树
- hdu-----(1507)Uncle Tom's Inherited Land*(二分匹配)
Uncle Tom's Inherited Land* Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (J ...
- EasyUI combotree 使用技巧
$('#areaName').combotree({ url: '../Ajax/Common.ashx?Method=GetCombotreeData', multiple: true, check ...
- python 循环设计
for循环 1.range()用法 for循环后的in跟随一个序列的画,循环每次使用的序列元素而不是序列的下标 例:s='abcdefg' for i in range(0,len(s),3): pr ...
- OpenTSDB介绍——基于Hbase的分布式的,可伸缩的时间序列数据库,而Hbase本质是列存储
原文链接:http://www.jianshu.com/p/0bafd0168647 OpenTSDB介绍 1.1.OpenTSDB是什么?主要用途是什么? 官方文档这样描述:OpenTSDB is ...