架设Git服务器
架设Git服务器项目
- Git Candy:http://github.com/Aimeast/GitCandy/ AE大神的作品, Git Candy© 是一个基于ASP.NET MVC的Git分布式版本控制平台,Git Candy的目标是轻松干掉Bonobo,逐渐追赶Github,并用微创新超过Github
- Bonobo Git Server:http://www.chodounsky.net/bonobo-git-server/ 需要IIS6+/.net 4/asp.net MVC 3,官方提供了比较详细的安装说明,但据说问题不少
- WebGit.NET:https://github.com/otac0n/WebGitNet/wiki/Getting-Started 需要IIS/asp.net MVC 3/msysgit,好久不更新了
- Git-Web-Access:https://github.com/yysun/Git-Web-Access 又一个MVC开发的,也好久没有更新
- git-dot-aspx:https://github.com/JeremySkinner/git-dot-aspx 需要iis7+/.net 4/asp.net MVC 2,也好久没有更新
- Grack:https://github.com/schacon/grack 需要ror环境,也好久没有更新
- GitStack:http://gitstack.com/ 对系统的要求比较高,2003/xp就无法支持了
- scm-manager:https://bitbucket.org/sdorra/scm-manager 需要Java环境,更新比较频繁,安装配置比较简单
- Gitblit:http://gitblit.com/ 同样需要Java环境,安装配置比较简单
- Gitalist:http://www.gitalist.com/ 需要perl环境,安装配置也简单
- Indefero:http://www.indefero.net/open-source/ 需要PHP/MySQL/Apache等,好久不更新
- Git Daemon即守护进程:通过git daemon --reuseaddr --base-path=/path/to/git/启动,通过git://协议进行访问,使用9418端口进行通信,需要配合Gitosis才能好用
- Gitolite:https://github.com/sitaramc/gitolite 需要cygwin/ssh以及一堆设置
- gitosis:https://github.com/tv42/gitosis 需要cygwin/ssh以及一堆设置
- GitLab:http://gitlabhq.com/ 需要ruby/Gitolite/Nginx等一堆
- CopSSH+msysgit+putty等工具,配置好繁琐
- 通过GitHub.com,或者类似的托管服务,这个是最省事的了
- Windows文件共享,但是不利于权限控制,极不推荐
- git remote add origin file:///ipaddress/sharename/
- git clone file:///ipaddress/sharename/
通过比较发现需要CopSSH/Cygwin等环境的应用配置起来比较复杂,剩下的几个支持git smart http协议的web应用配置起来比较简单:
- Bonobo Git Server
- WebGit.NET
- Git-Web-Access
- scm-manager
- Gitblit
- Gitalist
最后再根据更新/稳定等因素筛选出Bonobo Git Server、scm-manager、Gitblit,结果最终选择了scm-manager。
配置scm-manager
在机器上安装java环境,从http://java.com/zh_CN/download/manual.jsp选择脱机版下载安装
从https://bitbucket.org/sdorra/scm-manager/wiki/download下载最新的scm-server-1.24-app.zip
安装为系统服务:
1
|
scm-server.bat install |
然后在系统服务里设置为自动启动,然后启动服务就可以通过http://localhost:8080访问了,默认用户名和密码都是scmadmin。
登进系统以后通过Repository Types修改Git中心库存放的路径。
修改默认的管理员用户名或者是其他的一些配置都可以找到%userprofile%\.scm\config目录下的相应xml配置文件来修改,注意要重启scm-server服务。
更新:低版本操作系统如server 2003可能会在C:\Documents and Settings\Default User\.scm这样的目录下,而不是当前用户文件夹
如果要启用邮件以及提醒,还需要安装插件scm-mail-plugin、 scm-notify-plugin,然后在设置中把Mail相关的SMTP设置填写好。
如果代码提交要跟Redmine关联,还需要安装插件scm-redmine-plugin,然后在项目信息里的Redmine选项卡配置Redmine地址为http://localhost:3000;
如果要启用更新、自动关闭,还需要scm-manager和redmine使用同样的用户名密码,而且Redmine设置里必须启用REST API;
然后在提交的时候需要用git commit –m “(#问题ID) fix 修复内容”来关闭问题,可以用的关键字如fix,fixed等可以自行配置。
客户端安装
不管最终是使用那一种客户端(Git Extensions:http://code.google.com/p/gitextensions/或TortoiseGit:http://code.google.com/p/tortoisegit/),msysgit都是必须安装的:从http://msysgit.github.com/下载最新的Git-1.8.0-preview20121022.exe安装即可。
偏向使用命令行的只装msysgit就足够了;如果要使用图形界面可以选择msysgit自带的git gui,或者是另外安装git extensions或tortoisegit;个人感觉git extensions的图形界面比较强大,如果安装它的话一定要安装上KDiff3。
更便捷的就是与Visual Studio集成了,Git Extensions安装的时候可以选择安装Visual Studio插件集成;另外还有一个工具可以进一步提升便捷性Git Source Control Provider:http://gitscc.codeplex.com/,它依赖于msysgit和git extensions,可以在官方网站下载安装或者在visual studio扩展管理里面搜索git进行安装。
Git配置
Git客户端安装好之后最好配置一个全局的用户名及邮箱:
1
2
|
git config --global user.name "Your Name Here" git config --global user.email your_email@youremail.com |
这个配置在新建Repository时可能会用到;另外可以通过一下命令来查看配置:
1
|
git config --list |
Git相关资料
- Pro Git 中文版:http://git-scm.com/book/zh http://progit.org/book/zh/ 有墙,用google随便找一个PDF版直接下载
- Git Community Book 中文版:http://gitbook.liuhui998.com/index.html
- Git Magic:http://www-cs-students.stanford.edu/~blynn/gitmagic/intl/zh_cn/
- Git开发管理之道:http://blog.leezhong.com/translate/2010/10/30/a-successful-git-branch.html
- 如何高效利用GitHub:http://www.yangzhiping.com/tech/github.html
- 图解Git:http://marklodato.github.com/visual-git-guide/index-zh-cn.html
- 笔记《版本控制之道--使用Git》:http://www.nshen.net/sitelog/2011/08/03/git-note.html
- Git 故事连载:http://gitstory.wordpress.com/category/git/ Git Web Access作者写的(注意有墙)
另外还可以从Git Immersion一步一步演练:http://gitimmersion.com/lab_01.html
------EOF-----
架设Git服务器的更多相关文章
- centos 下git服务器搭建
准备 CentOS Linux release 7.0.1406 (Core) ssh 22端口 http 80端口 本文主要是ssh协议支持,http协议配置后还有问题. 摘抄的一段说明 SSH 协 ...
- Windows下配置Git服务器和客户端 超全
为了配合Redmine使用,特地用Git来做版本控制. Git Candy© 是一个基于ASP.NET MVC的Git分布式版本控制平台,Git Candy的目标是轻松干掉Bonobo,逐渐追赶Git ...
- git 服务器新建仓库 远程仓库
Git 服务器搭建 上一章节中我们远程仓库使用了 Github,Github 公开的项目是免费的,但是如果你不想让其他人看到你的项目就需要收费. 这时我们就需要自己搭建一台Git服务器作为私有仓库使用 ...
- Windows下配置Git服务器和客户端
http://www.cnblogs.com/lwme/archive/2012/12/25/configuring-git-server-and-client-on-windows.html] 选择 ...
- Git服务器分类
目录(?)[-] 服务器上的 Git 协议 本地协议 优点 缺点 SSH 协议 优点 缺点 Git 协议 优点 缺点 HTTPS 协议 优点 缺点 在服务器部署 Git 将纯目录转移到服务器 小型安装 ...
- Centos6架设GIT服务,windows客户端使用TortoiseGit加载KEYGEN连接GIT服务器
前几天得空,想起前一阵学了GIT还没好好实践,就在虚拟机中安装测试了一下,并简单记录了CENTOS6中GIT安装,ssh-keygen生成,客户端使用TortoiseGit加载KEYGEN连接GIT服 ...
- 搭建通过 ssh 访问的 Git 服务器
一.Git 协议 Git 可以使用四种主要的协议来传输数据:本地传输,ssh 协议,Git 协议和 HTTP 协议. Git 使用的传输协议中最常见的就是 ssh 了.大多数环境已经支持通过 ssh ...
- 使用Gitolite搭建轻量级的Git服务器
By Harrison Feng在Git服务管理工具这个领域,主要有三种流行的方案,它们分别是 Gitosis - 轻量级, 开源项目,使用SSH公钥认证,只能做到库级的权限控制.目前项目已经停止开发 ...
- Git服务器、http协议及XCode
本来费了老鼻子牛劲搭好了SVN,可以通过web进行访问,也弄好了eclipse和XCode,结果几个开发的同事说要上git,悲了个催,又开始折腾git. 因为公司只有一个公网的http出口,因此开始了 ...
随机推荐
- 80x25彩色字符模式
80x25彩色字符模式下显示缓冲区的结构: 在内存地址空间中,B8000H~BFFFFH共32KB的空间,为80x25彩色字符模式的显示缓冲区.往这个地址空间中写入数据,写入的内容会立即出现在显示器上 ...
- RESTful简单介绍
1 什么是restful Restful就是一个资源定位及资源操作的风格.不是标准也不是协议,只是一种风格.基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制. 资源:互联网所有的事物都 ...
- java.utils.UUID类介绍
1 UUID介绍 UUID (Universally Unique Identifier)缩写,即通用唯一识别码,也是被开源软件基金会 (Open Software Foundation, OSF) ...
- imx6. android6.0经常修改或者用到的目录(未完)
系统应用apk存放的文件: out/target/product/sabresd_6dq/system/app 系统配置存放目录:(我自己的,也许不对) out/target/product/sabr ...
- 深入理解JavaScript系列(38):设计模式之职责链模式
介绍 职责链模式(Chain of responsibility)是使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系.将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象 ...
- [转]使用依赖关系注入在 ASP.NET Core 中编写干净代码
本文转自:http://blog.jobbole.com/101270/ 原文出处: Steve Smith ASP.NET Core 1.0 是 ASP.NET 的完全重新编写,这个新框架的主 ...
- gulp入门详情
gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成:使用她,我们不仅可以很愉快的编写代码,而且大 ...
- Centos7 linux下 安装 Redis 5.0
网上找了很多文章,发现不全而且有些问题,安装很多次之后,总结一篇可以使用的,记录之. 环境:Centos7+Redis 5.0,如果环境不符合,本篇仅供参考. 1.准备工作 作者习惯软件安装包放在单独 ...
- 限流(三)Redis + lua分布式限流
一.简介 1)分布式限流 如果是单实例项目,我们使用Guava这样的轻便又高性能的堆缓存来处理限流.但是当项目发展为多实例了以后呢?这时候我们就需要采用分布式限流的方式,分布式限流可以以redis + ...
- Servlet开发(三)之ServletConfig,ServletContext
1. ServletConfig Servlet是开发动态web的技术,而web.xml是Tomcat工程中最基础也最重要的配置文件,Tomcat启动项目的时候会加载并读取这个文件,其中web.xml ...