linux 搭建git仓库 git代码仓库 (小团队内部合作)

雨点打透心脏的1/2处 2022-10-02 11:49 241阅读 0赞

一、安装git

1.安装 yum install git -y

  1. ![watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3oxMzYxNTQ4MDczNw_size_16_color_FFFFFF_t_70][]

2.添加git用户

[root@localhost ~]# useradd -m git
[root@localhost ~]# echo git:123456 | chpasswd
3.新建一个目录作为要部署代码的根目录

[root@localhost ~]# mkdir -p /www/abc

4.将这个目录的属主和属组都改为上面新建的用户

[root@localhost ]# chown -R git:git /www/abc

  1. 切换到部署代码的专用用户

    [root@localhost /]# su git
    [git@localhost /]$ cd /www/abc/

6.初始化git仓库 git init

  1. ![20190618155934191.png][]

7.【重要】让仓库接受代码提交

git config receive.denyCurrentBranch ignore
[可选] git config core.worktree ~/www
[可选] git config —bool receive.denyNonFastForwards false #禁止强制推送
至此,一个空的git仓库就在服务器上建好了,仓库的地址为:
git clone git@192.168.1.151:/www/abc 本地就可以更新和提交了

8.配置自动发布 更新服务端 git 仓库状态并检出文件

git update-server-info
git checkout -f (git checkout branch_name # 如果push的不是master分支)

  1. ![20190618161924253.png][]
  1. 设置服务器端更新钩子 post-update

    cd .git/hooks
    vim post-update
    将如下内容复制到文件中

    !/bin/sh

    unset GIT_DIR
    cd ..
    git checkout -f

10.这样提交的代码就可以自动提交到本地服务器了

二、添加多用户

1.添加用户 zs ls aa 属于git组

useradd zs
echo zs:123456 | chpasswd #密码是123465
usermod -a -G git zs #把张三添加到git组

查看git下的用户 grep git /etc/group

20190618163516638.png

客户端 zs用户就可以向 git clone zs@192.168.1.151:/www/abc 地址 pull和push代码了

注意:注意:注意:多人开发的时候会报权限错误 如果文件的权限信息被修改,git也作为一个差异保存,那么下次更新线上文件的时候就会提示文件冲突。这时需要关闭文件权限的检查,git中可以加入忽略文件权限的配置

所有git库: git config —global core.fileMode false (客户端执行 忽略文件权限的配置)
当前库: git config core.fileMode false

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3oxMzYxNTQ4MDczNw_size_16_color_FFFFFF_t_70 1

本地提交一个文件

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3oxMzYxNTQ4MDczNw_size_16_color_FFFFFF_t_70 2

在本地服务器上看到提交的代码

20190618171513611.png

配上nginx或apache就可以在本地服务器直接看提交的结果了。

添加用户 语法:

useradd [参数] name

参数:

-c:加上备注文字,备注文字保存在passwd的备注栏中。
-d:–home-dir HOME_DIR 指定home目录
-e:指定账号的失效日期,日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效。
-f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1.
-g:–gid GROUP 指定gid
-G:指定用户所属的附加群组。
-l:不要把用户添加到lastlog和failog中, 这个用户的登录记录不需要记载
-m:自动建立用户的登入目录。
-M:不要自动建立用户的登入目录。
-n:取消建立以用户名称为名的群组。
-p:–password PASSWORD 指定新用户的密码
-r:–system 建立一个系统帐号
-s: 指定用户登入后所使用的shell。默认值为/bin/bash。
-u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。

.gitignore文件,忽略git不必要提交的文件

1、在需要创建 .gitignore 文件的文件夹, 右键选择Git Bash 进入命令行,进入项目所在目录。

2、输入 touch .gitignore ,生成“.gitignore”文件。

3、在”.gitignore” 文件里输入你要忽略的文件夹及其文件就可以了。

发表评论

表情:
评论列表 (有 0 条评论,241人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Git 私有仓库

    简介: 如果你不想把自己的代码公开让别人阅读、使用,也不想花钱购买 GitHub 私有仓库,那么你就需要自己动手做一个了。 当然你也可以使用 Coding.net ,上面可