Git从本地仓库推送到服务器上的远程仓库进行wordpress部署

时间:2013-05-21 19:10:54

标签: wordpress git repository local remote-server

尽管找到了关于这个主题的最小一致文档,但我理解当你将git提交从本地存储库推送到服务器上的远程存储库(我的远程存储库位于bluehost服务器上)时,文件会被压缩,它们不会以正常形式立即显示在服务器上。

我成功用于查看这些文件“未压缩”的一种方法是克隆存储库。然而,我试图在工作流程系统中使用本地仓库和远程仓库来维护wordpress网站。当我将提交从本地仓库推送到远程仓库时,我无法通过浏览器访问该站点。为了通过浏览器访问未压缩版本的文件,是否还需要我需要执行的其他步骤?

每次推送后我是否必须将存储库克隆到同一文件夹?

1 个答案:

答案 0 :(得分:3)

我在Bluehost上有一个网站,这个设置非常简单。首先,您需要进入您的CPanel并请求ssh访问。

然后按照本指南设置私钥(留在您的计算机上)和公钥(进入bluehost服务器上的.ssh / authorized_keys)。

http://git-scm.com/book/en/Git-on-the-Server-Setting-Up-the-Server

我在我的主目录下设置了一个名为git的目录并设置了一个test.git项目。请注意,我正在使用〜/ test作为我的工作树,因为我不想将文件推送到我的www。你将使用〜/ www。

*****@******.info [~]# 
*****@******.info [~/git]# mkdir test.git
*****@******.info [~/git]# cd test.git
*****@******.info [~/git/test.git]# pwd
/home1/******/git/test.git
*****@******.info [~/git/test.git]# git init --bare
Initialized empty Git repository in /home1/*******/git/test.git/
*****@******.info [~/www/test.git]# cd hooks
*****@******.info [~/www/test.git]# vi post-receive

收到后文件:

#!/bin/sh
GIT_WORK_TREE=/home1/*******/test git checkout -f

使用以下方法保存文件:x

*****@******.info [~/www/test.git/hooks]# chmod +x post-receive
*****@******.info [~/www/test.git/hooks]# cd ~
*****@******.infoo [~]# git init test
Initialized empty Git repository in /home1/*******/test/.git/
*****@******.info [~]# exit

回到我的本地机器上:

[nedwidek@yule ~]$ git init test.git
Initialized empty Git repository in /home/nedwidek/test.git/.git/
[nedwidek@yule ~]$ cd test.git
[nedwidek@yule test.git]$ touch testfile.txt
[nedwidek@yule test.git]$ git add .
[nedwidek@yule test.git]$ git commit -m "testing" .
[master (root-commit) 1d6697c] testing
 0 files changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 testfile.txt
[nedwidek@yule test.git]$ git remote add origin *****@******.info:/home1/*****/git/test.git
[nedwidek@yule test.git]$ git push -u origin master
Counting objects: 5, done.
Writing objects: 100% (3/3), 270 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
To *****@******.info:/home1/*******/test.git
   f144186..0fd10f8  master -> master
Branch master set up to track remote branch master from origin.

我检查过,testfile.txt放在〜/ test /.