一、安装git
1.安装 yum install git -y
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
5. 切换到部署代码的专用用户
[root@localhost /]# su git
[git@localhost /]$ cd /www/abc/
6.初始化git仓库 git init
7.【重要】让仓库接受代码提交
git config receive.denyCurrentBranch ignore
[可选] git config core.worktree ~/www
[可选] git config --bool receive.denyNonFastForwards false #禁止强制推送
至此,一个空的git仓库就在服务器上建好了,仓库的地址为:
git clone [email protected]:/www/abc 本地就可以更新和提交了
8.配置自动发布 更新服务端 git 仓库状态并检出文件
git update-server-info
git checkout -f (git checkout branch_name # 如果push的不是master分支)
9. 设置服务器端更新钩子 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
客户端 zs用户就可以向 git clone [email protected]:/www/abc 地址 pull和push代码了
注意:注意:注意:多人开发的时候会报权限错误 如果文件的权限信息被修改,git也作为一个差异保存,那么下次更新线上文件的时候就会提示文件冲突。这时需要关闭文件权限的检查,git中可以加入忽略文件权限的配置
所有git库: git config --global core.fileMode false (客户端执行 忽略文件权限的配置)
当前库: git config core.fileMode false
本地提交一个文件
在本地服务器上看到提交的代码
配上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” 文件里输入你要忽略的文件夹及其文件就可以了。