git远程部署

一、配置远程主机

在centos用户的家目录(即/home/centos/)下初始化一个空的Git仓库:

git init --bare swaggers.git

编写hook脚本

cd swaggers.git/hooks
vim post-receive
cd /www/wwwroot/test
unset GIT_DIR
git config --list
git pull origin master
(切记将post-receive脚本权限修改为可执行文件,777即可)

二、检出至web目录

cd /data/web/src/
sudo git clone /home/centos/swaggers.git

三、本地配置ssh

本地配置ssh(否则可能无法提交至远程主机)生成公钥私钥文件

ssh-keygen -t rsa -C "username"

将本地C:\Users\user.ssh\id_rsa.pub公钥文件内容复制至远程主机/home/centos/.ssh/authorized_keys文件中(不同用户的公钥文件换行保存,切记.ssh目录及其下文件都要改成700权限)

将分支推送至远程主机:

git remote add giturl                               #   添加远程主机     
如 git remote add swaggers ssh://centos@192.186.0.1:22/home/centos/swaggers.git
默认为ssh协议,22端口,可简写为:
git remote add swaggers centos@192.186.0.1:/home/centos/swaggers.git

git push [<host>] [<localbranch>][:<remotebranch>]  #推送代码,host默认为origin,localbranch默认为当前分支,remotebranch默认为当前分支追踪的分支,当remotebranch不存在时,会在远程主机新建一个同名分支,省略localbranch时,表示删除指定的远程分支,等同于git push <host> --delete <remotebranch>,当前分支与远程分支之间存在追踪关系时,可省略localbranch和remotebranch.如 git push swaggers swaggers:master

git pull remotehost remotebranch localbranch		从remotehost主机拉取remotebranch分支代码到localbranch分支

git checkout -b 本地分支名 origin/远程分支名          将远程git仓库里的指定分支拉取到本地(用于从远程仓库获取本地不存在的分支)
    
git push [<host>] [<localbranch>][:<remotebranch>]	推送代码,host默认为origin,localbranch默认为当前分支,remotebranch默认为当前分支追踪的分支
                                                            当remotebranch不存在时,会在远程主机新建一个同名分支
                                                            省略localbranch时,表示删除指定的远程分支,等同于git push <host> --delete <remotebranch>
                                                            当前分支与远程分支之间存在追踪关系时,可省略localbranch和remotebranch

四、操作中可能碰到的问题

在完成一次推送后,从web目录检出仓库代码的情况下,是不会出现问题的,但是如果是先在web目录下检出仓库代码,再去推送,推送的过程中就会报错,分支有问题,此时应执行如下代码:

git push swaggers +master:refs/heads/master
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值