git 部署仓库

##新建一个git项目

cd /srv
git --bare init repository
chown -R git:git repository
cd /home
git clone  /srv/repository
cd /home/repository
vim h.txt
git add h.txt
git commit h.txt -m 'test'
git push origin master


##设置自动更新代码
vim /srv/repository/hooks/post-receive

#!/bin/sh
# 指定我的代码检出目录
DIR=/home/repository
git --work-tree=${DIR} clean -fd
# 直接强制检出
git --work-tree=${DIR} checkout --force


##使用
 

git clone git@192.168.1.1:/srv/repository


##可能要注意的是

1,添加SSH key

usermod -s /usr/bin/git-shell -d /home/git -g git git


将用户git的登录Shell修改为git-shell,主目录改为/home/git  用户组改为git

2,将客户端ssh key公钥添加到
/home/git/.ssh/authorized_keys

3,自动更新权限问题

git config --global core.fileMode false
chown -R git:git /srv/repository/hooks/post-receive
chmod -R 755 /srv/repository/hooks/post-receive
chown -R git:git /srv/
chown -R nginx:nginx /home/repository
chmod -R 777 /home/repository/

每个项目:

cd /home/repository/
git config core.fileMode false
mkdir .log
chown -R nginx:nginx .log/
mkdir data
chown -R nginx:nginx data/
chown -R git:git .git/
chown -R git:git .gitignore

##忽略某一个文件,不更新到本地,好像文件有修改的话还是会拉取...
 

git rm xxx 
git update-index --assume-unchanged config/config.php


##更让某一个文件:1-->更新本地库,不更新工作拷贝;2-->再从本地库更新单个文件

git fetch
git checkout origin/master -- path/to/file

##强制更新

git fetch --all
git reset --hard origin/master
git pull


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值