Git服务器搭建之CentOs7-阿里云搭建

首先使用连接工具连接到远程的阿里云服务器CentOs7上。

1.安装Git及创建用户

# 安装Git $ yum install git

# 创建一个git用户组和用户,用来运行git服务

$ groupadd git $ adduser git -g git

禁止用户git登录:(学习阶段可省略)

修改/etc/passwd文件,修改

# 找到这句: git:x:503:503::/home/git:/bin/bash

# 改为: git:x:503:503::/home/git:/bin/git-shell


2.创建证书登录

$ mkdir /home/git/.ssh $ chmod 700 /home/git/.ssh

$ touch 700 /home/git/.ssh/authorized_keys

$ chmod 600 /home/git/.ssh/authorized_keys

注意,如果是采用的sudo方式来创建git和相应的文件的,需要设置/home/git/.ssh/的owner为git,否则还是每次要输入密码的。

# owner改为git $ sudo chown -R git:git /home/git/.ssh/

编辑/home/git/.ssh/authorized_keys,把客户端的公钥放进去,1个公钥1行。

附:如何创建公钥:

# 创建私钥,文件位于用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件

$ ssh-keygen -t rsa -C "youremail@example.com"

将生成的公钥放入到服务器中的/home/git/.ssh/authorized_keys目录中去


3.初始化Git仓库

$ cd /srv

$ mkdir gitrepo

$ chown git:git gitrepo/

$ cd gitrepo

# 创建一个空的Git仓库,服务器上的Git仓库通常都以.git结尾

$ git init --bare project.git

# 将仓库所属用户改为git

$ chown -R git:git project.git


4.克隆仓库

在另一台电脑上(下面称为:Client),安装git,并且运行下面的命令:在这公网ip地址可以改成www.chengcheng.kim(自己的域名)

$ git clone git@39.107.xxx.xxx:/srv/gitrepo/project.git


5.验证安装

5.1推送到远程服务器

在本地Client的project目录下,创建一个文件:text.txt,内容随意,然后上传到服务器

$ git push origin master

5.2检验

在本地Client的另外一个目录下,克隆一下:

$ git clone git@39.107.xxx.xxx:/srv/gitrepo/project.git

看看text.txt是否存在,内容是否对。

5.3常用的Git命令

git init  //初始化本地git仓库

git add<file>  //添加文件

git add *.html  //添加一类文件

git add .  //添加所有文件

git status //查看状态

git commit //提交

git commit -m ''提交并注释 (这样就可以不用进入到编辑页面了)

git push  //从远程仓库考取数据

git clone  //从远程仓库拷贝数据

git config --global user.name'张宜成'  配置用户名

git config -- global user.email 'chengchengzhang123@qq.com' 配置邮箱

git rm --cached 文件名  //从add工作区中删除

git branch 分支名 (创建分支)

git checkout 分支名 (切换到你的分支中)

git checkout master(切换到主分支)

git merge 分支名(在master主分支下使用 将分支合并到主分支)

git remote 查看连接

git remote add origin 链接  (创建链接)

git remote remove 名称(删除remote)

git clone 将服务器端的项目克隆岛本地仓库

touch .gitignore 忽略需要上传的文件(将要忽略的文件放到该文件夹)

touch.gitignore 忽略文件(/文件名)

README.md文档 git对项目进行描述

$ git push origin master //推送到远程仓库


根据自己的情况发生的问题:

1.git clone git@39.107.xxx.xxx:/srv/gitrepo/project.git 连接不上Git服务器

解决:将git用户改为root用户,在服务器中将home目录中的设置到root目录,通过:

git clone root@www.chengcheng.kim:/test/test.git

就可以实现从远程服务器克隆到本地的指定目录

2.当git remote中没有任何origin,添加并更新后就可以push了

git remote add origin root@www.chengcheng.kim:test/test.git (添加)

git pull origin master   (更新)

$ git push origin master(push)

git remote -v  查看remote的信息

Git服务器环境搭建(打造属于自己的存储库)的更多相关文章

  1. git 服务器的搭建

    文章转载地址:http://www.linuxidc.com/Linux/2015-05/117502.htm 亲测可行,已经自己搭建一个正在使用中,搭建完成后,结合着pycharm +git,就能直 ...

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

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

  3. Jenkins+Maven+Git CI环境搭建手册

    Jenkins+Maven+Git CI环境搭建手册 环境: OS:Linux version 2.6.32-220.23.2.ali878.el6.x86_64 (ads@kbuild) (gcc ...

  4. Git服务器的搭建和使用

    一.GIT服务器的搭建 1. 安装Git yum -y install git 2. 创建git用户 adduser git 3. 创建证书登陆   收集所有客户端需要登录的用户的公钥,就是他们自己的 ...

  5. LNAMP服务器环境搭建(手动编译安装)

    LNAMP服务器环境搭建(手动编译安装) 一.准备材料 阿里云主机一台,操作系统CentOS 6.5 64位 lnamp.zip包(包含搭建环境所需要的所有软件) http://123.56.144. ...

  6. 分布式搜索ElasticSearch单机与服务器环境搭建

    从上方插件官网中下载适合的dist包,然后解压.进入bin目录,可以看到一堆sh脚本.在bin目录下创建一个test.sh: bin=/home/csonezp/Dev/elasticsearch-j ...

  7. CentOS下Web服务器环境搭建LNMP一键安装包

    CentOS下Web服务器环境搭建LNMP一键安装包 时间:2014-09-04 00:50来源:osyunwei.com 作者:osyunwei.com 举报 点击:3797次 最新版本:lnmp- ...

  8. 服务器环境搭建系列(四)-mysql篇

    1.按照上一篇服务器环境搭建系列(三)-JDK篇中的方法检查系统是否已经预装Mysql并卸载. 2.下载mysql,这里是MySQL-server-5.5.25-1.linux2.6.x86_64.r ...

  9. 关于git服务器的搭建

    Git 服务器可搭建在多个系统平台上. 本篇以 Windows 和 Ubuntu 系统为例,简单介绍 Git 服务器的构建. 最后使用 eclipse 的 egit 插件和 git clone 这两种 ...

随机推荐

  1. db2系统表相应功能

    SYSIBM: 基本系统编目,不建议直接访问SYSCAT: 默认授权给Public组.只读编目视图,一般通过这个来获取编目信息SYSSTAT: 可更新编目视图,会影响优化器的优化策略SYSFUN: 用 ...

  2. axios 取消请求的方法

    开发中遇到需要取消请求的功能,,点击终止查询可以取消开始查询请求,再次点击开始查询又可以进行查询. 解决方法:axios官方文档上的CancelToken,一开始用了这个api后,可以成功取消请求,但 ...

  3. Linux下刷新DNS缓存(Ubuntu/CentOS)

    现在很多Linux发行版都没有内置DNS本地缓存,Linux不像Windows那样可以使用ipconfig /flushdns来刷新,在Linux下无需刷新,因为本身没有缓存: 当然,如果非要缓存刷新 ...

  4. 使用Maven自动部署Java Web项目到Tomcat问题小记

    导读 首先说说自己为啥要用maven管理项目,一个直接的原因是:我在自己电脑上开发web项目,每次部署到服务器上时都要经历如下步骤: 首先在Eclipse里将项目打包成war包 将服务器上原来的项目文 ...

  5. Struts2漏洞拉响网站安全红色警报以及把Struts2更新为最新版本Struts2.3.15.1步骤

    360网站安全检测平台今日发布红色警报称,广泛应用在国内大型网站系统的Struts2框架正在遭到黑客猛烈攻击.利用Struts2“命令执行漏洞”,黑客可轻易获得网站服务器ROOT权限.执行任意命令,从 ...

  6. webservice接口与HTTP接口学习笔记

    一.webservice 的概念 Web 是使应用程序可以与平台和编程语言无关的方式进行相互通信的一项技术.Web 服务是一个软件接口,它描述了一组可以在网络上通过标准化的 XML 消息传递访问的操作 ...

  7. Spring Date JPA 更新部分字段

    在Spring Data JPA 中,新增和更新操作都是用save()的方式进行,JPA是通过什么方法来知道我们是要进行insert还是update呢? 经过测试,JPA对程序调用的save()方法判 ...

  8. 端口转发工具rinetd的安装与配置

    端口映射和转发在实际应用中非常常见,比如一个局域网只有一台服务器可以被互联网访问到,那么如果想通过互联网访问局域网中其他的服务,最常用的方式就是在这一台机器上开放端口,然后转发至局域网中其他主机的端口 ...

  9. zeromq学习笔记2——简单的客户端和服务端测试程序

    1.前言 zeromq提供了guide,http://zguide.zeromq.org/,可以帮助新手快速上手,提供了C\C++\PHP等多种语言. 2.测试程序 使用zeromq给的hwserve ...

  10. windows多线程同步--事件

    推荐参考博客:秒杀多线程第六篇 经典线程同步 事件Event   事件是内核对象,多用于线程间通信,可以跨进程同步 事件主要用到三个函数:CreateEvent,OpenEvent,SetEvent, ...