2014-02-24 172 views
-1

我有一个git repo,其中一组开发人员和我正在合作项目代码。偶尔,我们希望将git repo复制到具有外部IP地址(w.x.y.z)的VPS(安装为Linux服务器)。将git repo部署到“production”服务器

我可以进入一个SFTP客户端并向上浏览文件夹层次结构到服务器根目录,然后导航到/ var/www /(服务器web根目录)来删除我的文件,但我想部署到服务器通过命令行来代替。

我的目标是将Linux服务器配置为远程git目录,但不知道如何去浏览文件层次结构,让git认识到远程分支仓库需要进入/ var/www /。

简要搜索已发现git remote add origin [email protected]然后使用git push origin

看来,通过连接这种方式到w.x.y.z将使我在'用户名'的主文件夹,而不是通过浏览器访问根网站目录(/ var/www /)。

有没有人了解我应该如何去设置一个远程目录来部署git仓库到“生产”服务器?

回答

1

你似乎正在做一个相当不明显的方式。我认为你想要做的是将git repo复制到其他地方(vps服务器)。达到这个标准的方法是git clone

在你/var/www/目录或其合适的目录,这样做:

git clone [URL-FROM-GITHUB] 

这将克隆Git仓库到你的VPS。然后,您可以用

git pull 

可以写一个脚本这与

ssh my.vps.server 'cd /var/www/whatever && git pull' 

但是更新,通常你不希望在整个项目“在/ var/WWW/...”,因为这也将把你不想在那里部署的东西,例如.git目录。因此,在您的主目录中克隆回购可能更好,并使用--exclude删除不需要的文件或rsync -ing回购的子目录,制作一个小脚本rsync适当的/var/www/目录与您的回购。

+0

谢谢。我相信这正是我所期待的。我会研究一下rsync,看看能否为我所需要的工作做好准备 –