Linux 下 git 安装 远程服务搭建

系统环境:

  • CentOS 6.6 x86_64
  • 服务端 IP:192.168.2.45

本文针对 git 的 SSH 协议,搭建远程服务。与创建一个普通用户,通过 SSH 协议授权访问的操作思路完全一致, 只不过服务端与客户端在操作项目时都使用 git 而已,服务搭建十分简单。当然更多更详细的配置还是要看 git 手册。

安装 git

# yum install git

添加 git 用户

用户名可以随便起,我这里创建一个以 git 为名称的用户:

# adduser git

禁止 git 用户登录,修改 /etc/passwd 文件,将:

git:x:501:501::/home/git:/bin/bash

改为:

git:x:501:501::/home/git:/usr/bin/git-shell

如果你创建的是其他的用户名,修改对应用户名的登录方式为 /usr/bin/git-shell。

Git SSH Key 生成步骤

一 、

设置Git的user name和email:

$ git config --global user.name "xuhaiyan"
$ git config --global user.email "[email protected]"

二、生成SSH密钥过程:

1.查看是否已经有了ssh密钥:cd ~/.ssh

如果没有密钥则不会有此文件夹,有则备份删除

2.生存密钥:

$ ssh-keygen -t rsa -C “h[email protected]”
按3个回车,密码为空。

Your identification has been saved in /home/tekkub/.ssh/id_rsa.
Your public key has been saved in /home/tekkub/.ssh/id_rsa.pub.
The key fingerprint is:
………………

最后得到了两个文件:id_rsa和id_rsa.pub

授权访问

免密码访问:收集客户端的 id_rsa.pub 公钥,追加到 /home/git/.ssh/authorized_keys:

# cat /path/to/some_client/id_rsa.pub >> /home/git/.ssh/authorized_keys

如果客户端有 root 权限或有 /home/git 目录的写权限可以使用:

# ssh [email protected] ‘mkdir -p /home/git/.ssh && cat >> /home/git/.ssh/authorized_keys‘ < ~/.ssh/id_rsa.pub

使用密码访问

# passwd git 输入你想要设置的密码

如果你创建的是其他的用户名,修改对应用户名的密码。

创建 git 项目

假定我们将 git 项目统一放在 /opt/gitproj 目录下:

# mkdir -p /opt/gitproj

创建项目:

# cd /opt/gitproj/ # git init --bare sample.git

修改权限:

# chown -R git:git sample.git

我们先在本地克隆一份,后面在客户端提交文件时,可以在此处拉取验证:

# cd /tmp/ # git clone /opt/gitproj/sample.git/ Initialized empty Git repository in /tmp/sample/.git/ warning: You appear to have cloned an empty repository.

如果你只有一台服务器,git 服务和 web 服务都在上面,那么你可以考虑选择这种方法。

验证

客户端

$ git clone [email protected].168.2.45:/opt/gitproj/sample.git Cloning into ‘sample‘... warning: You appear to have cloned an empty repository. Checking connectivity... done. $ cd sample/ $ echo ‘first commit‘ > 1.txt $ git add 1.txt $ git commit -am ‘update‘ $ git push Counting objects: 3, done. Writing objects: 100% (3/3), 220 bytes | 0 bytes/s, done. Total 3 (delta 0), reused 0 (delta 0) To [email protected].168.2.45:/opt/gitproj/sample.git * [new branch] master -> master

如果出现 fatal: The remote end hung up unexpectedly 错误,使用 git push origin master 推送。

转到 服务端

现在我们到 /tmp/sample/ 目录下拉取最新提交的文件,验证一下:

# cd /tmp/sample/ # git pull remote: Counting objects: 3, done. remote: Total 3 (delta 0), reused 0 (delta 0) Unpacking objects: 100% (3/3), done. From /opt/gitproj/sample * [new branch] master -> origin/master # cat 1.txt first commit

到此我们的 git 服务就搭建完毕了,很简单那。

参考

http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000 http://git-scm.com/book/zh/v1/服务器上的-Git-协议 http://git-scm.com/book/zh/v1/服务器上的-Git-架设服务器 http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html
转载请注明出处。 本文地址:http://blog.aboutc.net/linux/71/git-remote-services-to-build-under-linux
时间: 2024-10-11 01:49:15

Linux 下 git 安装 远程服务搭建的相关文章

Linux下git安装配置

一.Linux下git安装配置 2013-07-28 20:32:10|  分类: 默认分类 |  标签:linux  git  server  |举报|字号 订阅 http://abomby.i.sohu.com/blog/view/168755260.htm http://www.linuxidc.com/Linux/2011-12/48555.htm Git是分布式的版本控制系统,实际上是不需要固定的服务器的,Git与svn的最大区别是,它的使用流程不需要联机,可以先将对代码的修改,评论,

Linux下Git安装、配置

安装 首先查看下有没有安装过 输入 git,出现以下的,就说明安装过了. 否则, 执行命令:sudo apt-get install git    进行安装 安装好之后,还需要执行命令: git config --global user.name "用户名" git config --global user.email "邮箱" Git是分布式版本控制系统,所以,每个机器都必须自报家门:名字和Email. 创建版本库 版本库,可以简单理解成一个目录,这个目录里面的所

linux下git的安装和使用(转)

转自:http://www.cnblogs.com/sunada2005/archive/2013/06/06/3121098.html 最近在使用github,感觉不错.在windows下,可使用github提供的windows客户端(http://windows.github.com/).很傻瓜,很方便.如何使用?详见:http://www.cr173.com/html/15618_1.html.(有图是王道)最近发现,在公司电脑上安装github的windows客户端时,可能由于公司网络限

Linux下Git和GitHub使用方法总结 (码云)

初学先记住这几条,其他慢慢研究. 下面讲如何用码云完成一个项目的提交, 我的步骤 https://git.oschina.net/phpervip/qianzhu(此例:一个企业模板): 先在码云上注册一个帐号. 然后新建项目,就有一个git地址. 本地进入你的项目目录. 初始化项目->建远程连接->获取项目->添加版本->版本提交->远程提交 git init git remote add origin https://git.oschina.net/phpervip/qi

Linux下Git和GitHub使用方法总结

来源:Linux下Git和GitHub使用方法总结 1 Linux下Git和GitHub环境的搭建 第一步: 安装Git,使用命令 “sudo apt-get install git” 第二步: 到GitHub上创建GitHub帐号 第三步: 生成ssh key,使用命令 “ssh-keygen -t rsa -C "[email protected]"”,your_email是你的email 第四步: 回到github,进入Account Settings,左边选择SSH Keys,

Linux下Git和GitHub基本使用

[初识Github] 首先让我们大家一起喊一句"Hello Github".YEAH!就是这样. Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理.在推出后,Git在其它项目中也取得了很大成功,尤其是在Ruby社区中.目前,包括Rubinius和Merb在内的很多知名项目都使用了Git.Git同样可以被诸如Capistrano和Vlad the Deployer这样的部署工具所使用.同样,eoe.cn客户端的源码也托管在github

Linux下编译安装qemu和libvirt

目录 [hide] 1 安装qemu 1.1 qemu介绍 1.2 下载源文件 1.3 编译安装 2 安装libvirt 2.1 libvirt介绍 2.2 下载libvirt 2.3 编译安装 3 参考资料 KVM虚拟机(英语:Kernel-based Virtual Machine),是一种用于Linux内核中的虚拟化基础设施.KVM目前支援Intel VT及AMD-V的原生虚拟技术.KVM在2007年2月被导入Linux 2.6.20核心中.它也被引入FreeBSD.在Mac OS X中,

ubuntu下git安装及使用

ssh目录在etc/ssh下 如何在本地使用git http://jingyan.baidu.com/album/295430f1c62c900c7e0050fd.html?picindex=1 参考:1. ubuntu下git安装及使用 http://www.cnblogs.com/jackge/archive/2013/08/17/3264801.html 2. 多 SSH Key 管理技巧与 Git 多账户登录问题 http://blog.csdn.net/forlong401/artic

linux下svn服务器的搭建

网上的教程实在是太恶心了,不是太老,就是有问题,刚参考的一篇文章也有问题.自己记录下来,以后用就方便了,现在一边重新安装一遍,一边记录.笔者亲测,今天是5月29号深夜. linux用的是centos6.2,yum install subversion,安装svn服务端.本篇操作均为root用户权限. 1.建立svn库目录. mkdir -p /opt/svndata/repos1 2.建立版本库 svnadmin create /opt/svndata/repos1 3.修改配置文件 (1)服务