使用gitblit搭建一个简单的局域网服务器

1、使用背景

现在很多使用github管理代码,但是github需要互联网的支持,而且私有的git库需要收费。有一些项目的代码不能外泄,所以,搭建一个局域网的代码服务器就非常重要了。

2、需要的工具

Git、tortoisegit、gitblit,其中tortoisegit不是必须的,它可以说是git的一个可视化工具,如果只有git,你的一些操作只能通过命令行进行操作,而tortoisegit它可以减少命令行的输入,点击鼠标就能完成操作。

3、安装

详细安装教程见:https://blog.csdn.net/qq_40646143/article/details/79755144

文件下载地址:

3.1、git的安装

一直点击下一步就可以(最好修改一下安装路径)

安装完后,随便找一个文件夹,在空白处点击鼠标右键,如果能看到Git GUI Here和Git Bash Here这两个选项,代表安装成功。

3.1.1、设置用户名和邮箱

这一部是很重要的设置,那就是设置你的用户名和邮箱,因为git是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识。

Git config --global user.name ‘hxj’

Git config –global user.email ‘123456@qq.com’

3.1.2、设置sshKey

Git config –global ssh.variant ssh

执行完这句话,会在你的c盘生成一个文件.ssh,该文件底下有两个文件(id_rsa和id_rsa.pub)

前者是私有秘钥(不要外泄),后者是公共的秘钥(可以外泄)

生成的这两个秘钥会在github和gitblit中用到

3.2、tortoisegit的安装

一个是安装包,另一个是汉化插件

选择好安装目录,一直点击下一步就行(注意,安装完第一个软件后,可能需要你重启电脑)。

3.2.1、设置为简体中文

安装完汉化插件后,点击鼠标右键,鼠标滑动到TortoiseGit(T),选择setting,进入如下页面,将语言改为中文就可以了。

3.3、gitblit安装

直接解压gitblit的压缩文件就可以

3.3.1、修改gitblit的配置

进入data文件夹中,找到defaults.properties文件

3.3.1.1、找到server.httpPort,设定http协议的端口号: server.httpPort = 3000(随意填写,没有被占用就行)

3.3.1.2、找到server.httpBindInterface,设定服务器的IP地址(本机IP地址,可以在cmd中通过ip config查看):server.httpBindInterface = 1.10.103.11

3.3.1.3、找到server.httpsBindInterface,设定为localhost或者ip(随意填写,没有被占用就行):server.httpsBindInterface = localhost

3.3.2、启动gitblit并打开

在浏览器中输入http:// 1.10.103.11:3000或者https://localhost:8443,生成如下界面就代表成功了

3.3.3、将gitblit设置为windows 服务

在gitblit文件夹中编辑installService.cmd文件

修改完后,然后启动该文件(以管理员身份运行),Windows服务会生成一个gitblit服务,这样你就可以将它设置为开机自动启动了。

4、本地git与gitblit相关联

有两种方法:1:将本地的项目推送到gitblit中;2:本地从gitblit中clone(克隆)一份

4.1、将本地的项目推送到gitblit中

4.1.1、登录gitblit,默认的帐号和密码为admin

4.1.2、创建一个用户hxj(也可以不创建,底下一会使用admin用户)

点击添加用户

根据自己的需求填写

添加完用户后,退出admin用户,改用hxj用户登录

登录成功后,点击创建版本库

根据自己的需求进行选择

创建完之后,如下图所示:

上图的那些命令底下会用到。在本地创建一个项目文件夹d:\\123,并创建一个文件ceshi.txt,内容为11111111

点击鼠标右键,进入Git Bash Here

输入一下内容

这些命令自己去网上学习,然后刷新页面。

这样就大功告成了。

4.2、本地从gitblit中clone(克隆)一份

比如说,我gitblit中有一个项目testgit

4.2.1、使用git的命令行克隆

先复制上图的url路径,然后找一个文件夹,把该文件夹当做容器,鼠标在空白处点击右键,打开Git Bash Here

输入内容:

结果如下:

这样你就可以对文件进行一些修改了,比如新增一个文件demo.txt,内容可以随便填写。

我们先将它放入暂存区中(git add demo.txt),然后再放入工作区中(git commit –m ‘提交的内容’),最后我们再推送到gitblit中(git push –u origin master),如下图所示:

刷新gitblit页面

4.2.2、使用tortoisegit克隆

在文件家中单机鼠标右键,选择Git克隆,生成如下页面,点击确定

输入密码即可

本地的连接基本上这是这样。

5、局域网内其他人协同开发

前面讲的内容只能在本地中使用,但是我们要和其它同事共同开发,需要同一个局域网内其他电脑也能连接我这台电脑,把我这台电脑当做服务器,这就需要进行一些防火墙设置了。(我的电脑是windows10系统)

打开“控制面板”-》“管理工具”-》“高级安全Windows Defender 防火墙”,如图所示:

点击左侧的“入站规则”,然后点击右侧的“新建规则”

注意:下图的路径要选对,我的是64位,所以选择amd64文件底下的gitblit.exe,如果是32位,那么要选择×86文件底下的gitblit.exe

然后一直点击下一步就行

下面的名称随便起就行,点击完成即可。

这样,同一个局域网内的其它电脑也可以登录你的电脑(作为服务器)中的gitblit,直接输入地址就行,https://1.10.103.11:8443或者http://1.10.103.11:3000,同时也可以对gitblit进行拉取和推送。

使用gitblit搭建一个简单的局域网服务器的更多相关文章

  1. 利用 nodeJS 搭建一个简单的Web服务器(转)

    下面的代码演示如何利用 nodeJS 搭建一个简单的Web服务器: 1. 文件 WebServer.js: //-------------------------------------------- ...

  2. nodejs基础 用http模块 搭建一个简单的web服务器 响应纯文本

    首先说一下,我们平时在浏览器上访问网页,所看到的内容,其实是web服务器传过来的,比如我们访问www.baidu.com.当我们在浏览器地址栏输入之后,浏览器会发送请求到web服务器,然后web服务器 ...

  3. 搭建一个简单的FTP服务器

    本文介绍通过win7自带的IIS来搭建一个只能实现基本功能的FTP服务器,第一次装好WIN7后我愣是没整出来,后来查了一下网上资料经过试验后搭建成功,其实原理和步骤与windows前期的版本差不多,主 ...

  4. nodejs基础 用http模块 搭建一个简单的web服务器 响应JSON、html

    前端在开发中,大多会想浏览器获取json数据,下面来用nodejs中的http模块搭建一个返回json数据的服务器 var http = require("http"); var ...

  5. 搭建一个简单的svn服务器

    cenos 6.5,svnserver 1.6.11 默认可能已经安装,没有的话就: yum install svn -ysvnserver --version 创建一个svn仓库: svnadmin ...

  6. 搭建一个简单的svn服务器(旧)

    cenos 6.5,svnserver 1.6.11 默认可能已经安装,没有的话就: yum install svn -ysvnserver --version 创建一个svn仓库: svnadmin ...

  7. 局域网 FTP建立,搭建一个简易的局域网服务器

    1.创建用户名以及密码: 右键我的电脑 -> 管理->本地用户和组->右键用户->新用户----设置用户名密码: 2.安装IIS 和FTP :控制面板->程序->打 ...

  8. golang搭建一个简单的web服务器

    package main import ( "io/ioutil" "log" "net/http" ) func main() { htt ...

  9. 用nodejs搭建一个简单的服务器

    使用nodejs搭建一个简单的服务器 nodejs优点:性能高(读写文件) 数据操作能力强 官网:www.nodejs.org 验证是否安装成功:cmd命令行中输入node -v 如果显示版本号表示安 ...

随机推荐

  1. 『cs231n』循环神经网络RNN

    循环神经网络 循环神经网络介绍摘抄自莫凡博士的教程 序列数据 我们想象现在有一组序列数据 data 0,1,2,3. 在当预测 result0 的时候,我们基于的是 data0, 同样在预测其他数据的 ...

  2. 信号处理signal、sigaction、pause、信号嵌套处理、不可重入函数

    信号的捕捉和处理 主要由signal和sigaction函数来完成.还有一个函数pause,它可用来响应任何信号,不过不做任何处理. 1.signal函数 typedef void (*sighand ...

  3. 实现自己的ls命令

    一步步实现,先看最简单的ls的指令: ls不带参数,直接打印文件名 dst.txt main10.c main11.c main12.c main13.c main14.c~ main15.c~ ma ...

  4. 51nod1693

    题解: 首先将问题转化,可以发现操作改为两种 一种是s*=k,代价为k,一种是s--,代价为1 转化成图论,spfa跑最短路 然后更据一些证明,代价1的k<=13且为质数,并且不可能操作2连续5 ...

  5. Jena RDF API

    1.  jena 简单使用 RDF可以用简单的图示:包括节点以及连接节点的带有箭头的线段来理解. 这个例子中,资源 http://.../JohnSmith 表示一个人.这个人的全名是 John Sm ...

  6. 用正则表达式匹配用rdf3x处理过后的TTL格式文档

    1.比如下面这个用rdf3x处理过后的TTL文档片段: 注意缩进的是两个空格 <http://rdf.ebi.ac.uk/resource/chembl/target/CHEMBL2363853 ...

  7. C++ primer第4版 4.25

    编写程序比较两个 string 类型的字符串,然后编写另一 个程序比较两个 C 风格字符串的值. string str1,str2; cout<<"Enter two strin ...

  8. Mysql命令insert into:向表中插入数据(记录)

    insert into命令用于向表中插入数据. insert into命令格式:insert into <表名> [(<字段名1>[,..<字段名n > ])] v ...

  9. git添加本地项目到git

    1.切换到项目所在文件夹下:git int 2.git add -A 3.git commit -m '11' 4.git remote add origin https://github.com/g ...

  10. cool

    Heidi Roizen女士一度是硅谷人人争相学习的典范.她曾创办自己的公司并管理了 14 年之久.后来,她担任苹果公司主管开发者关系的高级副总裁.现在,她是 DFJ Venture 的一位风投家,她 ...