搭建私有git服务器进行版本控制
来源:互联网 发布:js object to string 编辑:程序博客网 时间:2024/05/16 14:46
一、安装git
分别在服务器和本地安装最新版本的git
1、服务器上源码安装最新版git
==通常centos上使用yum源安装的git版本过低==
1. 检查系统上是否已经安装git,若已有则卸载
// 查看当前git版本# git --versiongit version 1.7.1// 卸载旧版本# yum remove -y git
2. 安装依赖包,下载最新版本git源码
# yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel# wget https://github.com/git/git/archive/v2.13.2.tar.gz# tar zxf v2.13.2.tar.gz
3. 安装git,配置环境变量
# cd git-2.13.2# make prefix=/usr/local/git all# make prefix=/usr/local/git install# echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc# source /etc/bashrc // 实时生效
4. 查看git版本号,正确显示则安装成功
# git --versiongit version 2.13.2
5. 若编译时报错如下
libgit.a(utf8.o): In function `reencode_string_iconv':/usr/local/src/git-2.13.2/utf8.c:463: undefined reference to `libiconv'libgit.a(utf8.o): In function `reencode_string_len':/usr/local/src/git-2.13.2/utf8.c:524: undefined reference to `libiconv_open'/usr/local/src/git-2.13.2/utf8.c:535: undefined reference to `libiconv_close'/usr/local/src/git-2.13.2/utf8.c:529: undefined reference to `libiconv_open'collect2: ld returned 1 exit statusmake: *** [git-credential-store] Error 1
可以按照如下方式解决
// 对之前git的make 操作进行 make clean# make clean# wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz# tar zxf libiconv-1.14.tar.gz# cd libiconv-1.14# ./configure --prefix=/usr/local/libiconv# make && make install// 创建一个软链接到/usr/lib# ln -s /usr/local/lib/libiconv.so /usr/lib# ln -s /usr/local/lib/libiconv.so.2 /usr/lib
然后
# make configure# ./configure --prefix=/usr/local/git --with-iconv=/usr/local/libiconv/# make && make install# echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc# source /etc/bashrc
6. 配置git 用户名及邮箱
# git config --global user.name 'your name'# git config --global user.email 'your email address'
2、本地安装最新版git(此处演示为Windows上安装)
- windows上安装直接下载最新版安装包,双击->下一步… 即可完成安装
- 所有选项默认即可
- 打开 git-bash,配置git 用户名和邮箱,同服务端配置第6步
二、服务器设置
1、添加一个git用户,为安全起见禁用shell登录
# useradd git// 为安全起见,禁用 git 用户的 shell 登录# vim /etc/passwd// 修改 git 用户的 shell 为 git-shell,路径使用 which git-shell 查看// 找到如下一行git:x:1001:1001::/home/git:/bin/bash// 修改成如下git:x:1001:1001::/home/git:/usr/local/git/bin/git-shell
2、初始化一个项目目录为一个仓库
// 进入到项目目录# git init
3、将该目录克隆成为裸仓库(作为中介)并设置裸仓库所有者为git用户
// 创建一个裸仓库# git clone --bare ProjectPath /srv/myProject.git
4、将裸仓库添加为远程仓库
// 进入到项目目录# git remote add origin /srv/myProject.git// 修改远程仓库所属主和所属组# chown -R git.git /srv/myProject.git
5、将服务器上的项目添加到远程仓库即 /srv/myProject.git
# git add .# git commit -m 'comment'# git push origin master
6、在该用户的家目录下面保存本地用户的公钥
# su git$ cd ~$ make .ssh$ chmod 700 .ssh$ cd .ssh$ touch authorized_keys$ chmod 600 authorized_keys// 然后在 authorized_keys 文件中加入本地用户的公钥 id_rsa.pub
7、打开git服务器的RSA认证
# vim /etc/ssh/sshd_config// 找到下面3行并去掉注释 1. RSAAuthentication yes 2. PubkeyAuthentication yes 3. AuthorizedKeysFile .ssh/authorized_keys
三、本地设置(Windows端)
1、 生成公钥并交给服务端
// 打开 git-bash,生成公钥$ ssh-keygen -t rsa// 在用户目录下的.ssh目录里面会生成 id_rsa, id_rsa.pub// 将 id_rsa.pub 里的内容拷贝到服务器上
2、 在保存公钥的同级目录下面新建config文件指定ssh端口(可选)
==类似使用搬瓦工VPS的可能默认ssh端口不是22的需要配置这个==
Host your domain name or server ipUser 服务端添加的git用户名Hostname your domain name or server ipPort ssh 端口IdentityFile ~/.ssh/id_rsa
3、 从服务器克隆项目到本地
$ git clone yrscgit@yrsc0597.com:/srv/yrsc.git
4、 添加远程仓库
四、测试
- 本地更改,添加,删除项目,然后推送修改到远程仓库
- 服务器项目目录下拉取最新的版本
转载请注明出处
阅读全文
0 0
- 搭建私有git服务器进行版本控制
- 版本控制-搭建git服务器
- 版本控制-搭建git服务器
- 搭建Git版本控制服务器GitBucket
- 私有git服务器的搭建
- git进行版本控制
- 搭建Git版本控制服务器——GitBucket
- 使用git进行版本控制
- 使用git进行版本控制
- 使用git进行版本控制
- 使用git 进行版本控制
- 使用git进行版本控制
- 使用git进行版本控制
- 使用Git进行版本控制
- 使用Git进行版本控制
- 一步一步搭建git私有仓库服务器记录
- 利用BitNami搭建版本控制服务器 Redmine与SVN联合进行版本控制
- git 服务器搭建,在自己服务器上搭建私有仓库
- CentOS 6.5 BCM43142 80211无线网卡驱动安装
- 函数重载与覆盖问题
- 2048-经典单机益智游戏
- 看代码学编程之python字符串格式化
- spring cloud 使用说明
- 搭建私有git服务器进行版本控制
- 如何掌握所有的程序语言---By王垠
- 数据结构 学习笔记(五):树(中):二叉搜索树,平衡二叉树
- Paxox算法
- 2.3 运算符与表达式
- JAVA, Eclipse 及Mysql 环境配置 for Mac
- 重载函数的继承
- DOM操作--创建、插入、删除元素
- 源码安装luarocks