美文网首页
Git 服务器搭建

Git 服务器搭建

作者: 心疼你萌萌哒 | 来源:发表于2018-05-24 17:02 被阅读0次

    Git 服务器搭建

    环境:
    vim /etc/hosts
    192.168.44.128 server 
    192.168.44.131  user
    1.安装:所有机器都安装
        # yum install curl-devel expat-devel gettext-devel  openssl-devel zlib-devel
        # yum install git -y
        # git --version
        # git version 1.8.3.1
    2.准备:
        因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。你也许会担心,如果有人故意冒充别人怎么办?这个不必担心,首先我们相信大家都是善良无知的群众,其次,真的有冒充的也是有办法可查的。
        注意git config命令的--global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
     # git config --global user.email "1039095857@.com"
     # git config --global user.name "guoqingyangzz"
    
    3.接下来我们 创建一个git用户组和用户,用来运行git服务:
    $ groupadd git
    $ useradd git -g git
    2、创建证书登录
    收集所有需要登录的用户的公钥,公钥位于id_rsa.pub文件中,把我们的公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。
    yum -y install openssh-clients
    ssh-keygen -t rsassh-copy-id -i git@server
    如果没有该文件创建它:
    $ cd /home/git/
    $ mkdir .ssh
    $ chmod 755 .ssh
    $ touch .ssh/authorized_keys
    $ chmod 644 .ssh/authorized_keys
    3.禁用shell登录:
    出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:
    git:x:1001:1001:,,,:/home/git:/bin/bash
    改为:
    git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
    这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。
    
    4.初始化Git仓库
    首先我们选定一个目录作为Git仓库,假定是/home/gitrepo/runoob.git,在/home/gitrepo目录下输入命令:
    $ cd /home
    $ mkdir gitrepo
    $ chown git:git gitrepo/
    $ cd gitrepo
    
    $ git init --bare runoob.git
    Initialized empty Git repository in /home/gitrepo/runoob.git/
    以上命令Git创建一个空仓库,服务器上的Git仓库通常都以.git结尾。然后,把仓库所属用户改为git:
    $ chown -R git:git runoob.git
    5.克隆仓库
    $ git clone git@server:/home/gitrepo/runoob.git
    Cloning into 'runoob'...
    warning: You appear to have cloned an empty repository.
    Checking connectivity... done.
    192.168.44.128 为 Git 所在服务器 ip 。
    6.1 方案1、就是不用关联Git仓库, 直接从Git中克隆源码到本地, 项目根目录也不用创建
    在user 客户机克隆远程仓库:
    现在,可以通过git clone命令克隆远程仓库了,在各自的电脑上运行:
    # git clone git@server:/home/gitrepo/runoob.git
    Cloning into 'sample'...
    warning: You appear to have cloned an empty repository.
    #cd runoob.git
    #vim a.txt
    #git add a.txt
    #git commit -m "a"
    #git push -u origin master
    这样我们的 Git 服务器安装就完成。
    6.2 方案2、本地创建项目根目录, 然后与远程Git关联, 之后的操作一样:
       # mkdir xxx
       #  cd xxx
       #  git init 
       # git remote add origin git@server:/home/gitrepo/runoob.git/
       #  vim cc.txt
       #  git add cc.txt
       #  git commit -m "cc"
    #git pull --rebase origin master
     #  git push -u origin master
    8. 分支 在客户机写 user(192.168.44.131)
    
    

    远程仓库未创建

    git init 初始化一只本地仓库
    
    把你的项目扔进去(或者基于初始化仓库建立项目vue init webpack demoxxxx)
    
    git status //查看状态
    
    git add -A //提交所有文件改动
    
    git remote add origin ssh地址 // 链接远程仓库步骤1
    
    git push -u origin master //链接远程仓库步骤2
    
    git add -A //提交所有文件改动
    
    git status //查看状态
    
    git commit -m "xx" //备注功能
    
    git status //查看状态
    
    git pull origin master //拉最新代码 (下载)
    
    git push origin master //推送到远程 (上传)
    
    

    远程仓库已创建:

    git clone xxxxxxxxxxxx
    
    关联远程
    
    git remote add origin ssh地址 // 链接远程仓库步骤1
    
    git pull origin master //拉最新代码 (下载)
    
    git add -A //提交所有文件改动
    
    git commit -m "xx" //备注功能
    
    git push origin master //推送到远程 (上传)
    

    要检查已有的配置信息

    [root@server etc]# git config --list
    user.email=811259960@.com
    user.name=guoqingyangzz
    
    查看配置信息
    要检查已有的配置信息,可以使用 git config --list 命令:
    $ git config --list
    http.postbuffer=2M
    user.name=runoob
    user.email=test@runoob.com
    有时候会看到重复的变量名,那就说明它们来自不同的配置文件(比如 /etc/gitconfig 和 ~/.gitconfig),不过最终 Git 实际采用的是最后一个。
    这些配置我们也可以在 ~/.gitconfig 或 /etc/gitconfig 看到,如下所示:
    vim ~/.gitconfig 
    显示内容如下所示:
    [http]
        postBuffer = 2M
    [user]
        name = runoob
        email = test@runoob.com
    也可以直接查阅某个环境变量的设定,只要把特定的名字跟在后面即可,像这样:
    $ git config user.name
    runoob
    

    相关文章

      网友评论

          本文标题:Git 服务器搭建

          本文链接:https://www.haomeiwen.com/subject/oxisjftx.html