ZERO 大概流程
从托管平台克隆代码到本地->将服务器的git进行配置->将本地代码上传到服务器->服务器进行检查更新代码
ONE 你首先得有个git的账号
那么这个账号可以有github,码云,还有coding,我选择的是coding,国内的比较快,感觉又比较现代化
TWO 将coding的仓库克隆到本地
1.在coding中创建好项目以及仓库后,
2.要进行初始化,也就是弄个readme的文件出来,
3.复制仓库地址,然后确保你的本地装好了git,
4.通过git clone <你的地址> 这个命令,克隆我们在coding的仓库.
5.将自己的代码复制到clone下的文件夹中
6.将代码提交到coding中
THREE 配置服务器端的Git
adduser git -m //添加一个名叫git的用户,用于专门上传代码 passwd git //设置密码 mkdir git_repository //在你需要得部署代码的地方创建你的项目文件夹 chown git:git git_repository -R //将这个文件夹的所属权限改成你刚创建的用户 请注意:这里的git:git = 用户名:用户组 cd git_repository //进入这个文件夹 git init //初始化 git config receive.denyCurrentBranch ignore //接受文件
FOUR 配置本地的Git
git remote add server0 git@192.168.1.110:/home/git_repository/.git
其实上面也就是:
git remote add <主机名> <网址>
server0是自定的主机名,git是上文提到的专门用于提交代码的服务器用户,192.168.1.110是服务器IP,/home/git_repository就是服务器仓库目录。
git push server0 master
将我们的代码上传到远程服务器
不过这个步骤可能会出现很多问题,.首先我第一个遇到的是服务器地址填写错误,在ip 前面加上了http,通过通过 git remoteremove server0 来清除这个设置,然后进一步重写
第二个问题是一直显示我权限错误,我明明将所有文件赋予了权限,后来发现文件出在我把赋予权限的用户名和用户组写反了
chown git:git git_repository 前者是用户名也就是所属者,后者是所属者的用户组
FIVE 回到服务器中更新代码
这步操作万万不能省
git update-server-info
git checkout -f
运行上面两个就可以看到代码更新了,从你就放弃了陪你度过漫长时光的FTP,选择了高大上的Git了.
如果你还不满足希望能增自动带更新代码那么你还可以这样做,
在你的文件下,
ls -A cd .git/hooks vim post-receive
注意这里回到最初的文件夹目录中,将项目所有文件改变权限
chown git:git git_repository -R
修改保存
#!/bin/sh unset GIT_DIR DeployPath="你的项目路径" echo "===============================================" cd $DeployPath #进入web项目目录 echo "start" git update-server-info git checkout -f time=`date` echo "web server pull at webserver at time: $time."
可执行权限
chmod +x post-receive
感谢
参考文章:BENCJL的《Git简单应用:部署代码到服务器》https://blog.csdn.net/bencjl/article/details/53699684
参考文章:一大三千 的《在Linux服务器上搭建Git远程仓库并Push本地库》https://blog.csdn.net/u011726984/article/details/52036654