最近因为项目需求,需要实现一个原型系统,加上后期项目需要多人协作,考虑采用了git做版本控制。

这里主要简要描述下git服务器和客户端的搭建和配置。

1、git服务器

(1)安装git

sudo apt-get install git

git是一个分布式的版本控制工具,每个git仓库既可以作为服务器也可以作为客户端(不同于svn采用的集中式版本控制),故安装完成后需要配置用户信息

git config --global user.name  "mal"
git config --global user.email malt@gmial.com

(2)添加git用户,避免项目和其他文件相互冲突

adduser git
passwd git

(3)使用git用于新建一个仓库

git@malt:~$ mkdir res.git
git@malt:~$ cd res.git/
git@malt:~/res.git$ git --bare init

这里创建res.git仓库是使用git用户创建的,如果是root用户创建,后续采用 git remote add origin git@127.0.0.1:/home/git/res.git,对应权限错误。

2、git客户端

在git服务器远程仓库建立好后,就可以在客户端将自己的仓库加入到远程仓库中了。

whthomas@whthomas:~/workplace/gitu$ git init
初始化空的 Git 版本库于 /home/whthomas/workplace/gitu/.git/
whthomas@whthomas:~/workplace/gitu$ touch README
whthomas@whthomas:~/workplace/gitu$ echo hello >> README
whthomas@whthomas:~/workplace/gitu$ cat README
hello
whthomas@whthomas:~/workplace/gitu$ git add .
whthomas@whthomas:~/workplace/gitu$ git commit -m "add a README"
[master (根提交) 59d4695] add a README
file changed, insertion(+)
create mode README
whthomas@whthomas:~/workplace/gitu$ git remote add origin git@127.0.0.1:/home/git/res.git
whthomas@whthomas:~/workplace/gitu$ git push origin master
Counting objects: , done.
Writing objects: % (/), bytes | bytes/s, done.
Total (delta ), reused (delta )
To git@127.0.0.1:/home/git/res.git
* [new branch] master -> master

同样的,也可以在其他目录下git clone远程仓库

git clone git@localhost:/home/git/res.git

3、设置免密码push

在git服务器的git用户目录下。新建目录和文件(如果存在则不需要新建)

$ cd /home/git
$ mkdir .ssh
$ chmod .ssh
$ touch .ssh/authorized_keys
$ chmod .ssh/authorized_keys

在git客户端中,查看ssh公私钥,如果没有,使用命令"ssh-keygen"可以创建

其中id_rsa.pub为公钥,将其内容复制并追加到git服务器的authorized_keys中。之后则可以免密连接远程仓库。

搭建本地git服务器的更多相关文章

  1. gitblit 搭建本地git服务器

    本文主要描述gitblit搭建本地服务器

  2. 如何搭建本地svn服务器和搭建本地Git服务器

    搭建git本地服务器使用的软件有很多,例如:gitlab,gitblit,gitbucket,gogs,gitolite,具体比较:http://softlab.sdut.edu.cn/blog/su ...

  3. 搭建本地Git服务器6步走

    1. 在服务器上安装git和ssh 2. 在服务器上新建一个用户,比如就叫git sudo adduser git 3. 在服务器上新建一个目录来放置git仓库 mkdir gitrepo git i ...

  4. 本地Git服务器的搭建及使用

    本地Git服务器的搭建及使用 Git本地服务器环境搭建 搭建好的本地git服务器的局域网ip是192.168.1.188,用户名是RSCSVN 教程链接:http://blog.csdn.net/cc ...

  5. 使用Gitblit 搭建Windows Git服务器

    使用Gitblit 搭建Windows Git服务器 整理使用Gitblit搭建Git服务器的步骤. 目录 使用Gitblit 搭建Windows Git服务器 目录 下载安装 配置 运行 客户端运行 ...

  6. 利用阿里云搭建私有Git服务器

    服务器系统:Centos 6 (查看centos版本命令:lsb_release -a) 客户端系统:Windows 7 一.服务器端安装Git ==通常centos上使用yum源安装的git版本过低 ...

  7. [开发笔记usbTOcan]用树莓派搭建私有Git服务器

    0 | 思路 在开始编程前,先创建一个版本管理库,以前一直用SVN,但目前用Git的还是比较,正好利用这个机会学习GIt. 想过使用Github提供的免费服务器,但项目目前还没有做开源的准备,于是就有 ...

  8. Dnsmasq安装与配置-搭建本地DNS服务器 更干净更快无广告DNS解析

    默认的情况下,我们平时上网用的本地DNS服务器都是使用电信或者联通的,但是这样也导致了不少的问题,首当其冲的就是上网时经常莫名地弹出广告,或者莫名的流量被消耗掉导致网速变慢.其次是部分网站域名不能正常 ...

  9. [转]World Wind Java开发之四——搭建本地WMS服务器

    在提供地理信息系统客户端时,NASA还为用户提供了开源的WMS Server 服务器应用:World Wind WMS Server.利用这个应用,我们可以架设自己的WMS服务并使用自己的数据(也支持 ...

随机推荐

  1. Java变量初始化之后的默认值问题

    1) 局部变量初始化(局部变量:函数.语句中的变量,只在所属区域内有效)局部变量声明后,Java虚拟机不会自动给它初始化为默认值.因此对于局部变量,必须经过显示的初始化,才能使用它.如果使用一个没有被 ...

  2. C#:文件/注册表/线程的操作

    文件的操作:(file与fileinfo,前者是静态方法,执行安全检查,适合对一个的操作) 1.1.create: using System; using System.Collections.Gen ...

  3. url基础知识

    浏览器通过url访问服务器步骤 ①浏览器解析出url中的服务器名称 ②浏览器将服务器名称解析成ip(DNS解析) ③浏览器解析出url中的服务器端口(如果有端口的话) ④浏览器建立和web服务器的TC ...

  4. [CF1110E]Magic Stones

    题目大意:有一个长度为$n(n\leqslant10^5)$的数列$c$,问是否可以经过若干次变换变成数列$t$,一次变换为$c'_i=c_{i+1}+c_{i-1}-c_i$ 题解:思考一次变换的本 ...

  5. 数字表格(product)

    Description Solution 一开始的时候我是这么推的(\(f(n)\)表示斐波那契数列的第\(n\)项) \[ \begin{aligned} Ans&=\prod_{x=1}^ ...

  6. 微服务Kong(一)——简介

    重要提示: 本教程是根据 KONG 0.10.x 版本进行编写的. 一.什么是KONG Kong是一个可扩展的开源API层(也称为API网关或API中间件).它运行在任何RESTful API之前,并 ...

  7. fcntl文件锁操作

    文件锁经常应用于两个方面:1.一是锁定文件中的临界数据,比如并发投票时文件记录的投票数2.二是利用具有互斥性质的写锁,实现进程的并发控制. /*使用文件锁*/<F5>#include &l ...

  8. R语言--时间序列分析步骤

    大白. (1)根据趋势定差分 plot(lostjob,type="b") 查看图像总体趋势,确定如何差分 df1 = diff(lostjob)  d=1阶差分 s4_df1=d ...

  9. vi的一些使用技巧

    1.vi 编辑器中跳到文件的第一行:键盘按下 小写 gg   vi 编辑器跳到文件最后一行:键盘按 shift + g (等于G) 跳转到当前行的第一个字符按0,跳转到当前行的最后一个字符按shift ...

  10. ppp协议介绍(转)

    原文:https://www.cnblogs.com/gtarcoder/p/6259105.html PPP协议PPP协议是二层(数据链路层)协议,常用于拨号上网时客户端向服务器获取IP地址.PPP ...