从我的工作站,我可以“修改”到我服务器上的git裸存储库,其中包含运行“git checkout -f”的Hook,因此我可以通过Git部署我的网站。
问题是我网站的用户可以上传文件(如图片)。没有这些文件,网站无法正常工作。所以我的问题是:如何在实时版本上对我的工作站进行修改?(如用户上传的文件)。
**编辑:有关设置此配置的步骤的一些详细信息:**
在已包含该站点的服务器上:
$ cd /home/website/www $ git init $ git add * $ git commit -m 'First commit !'
...然后创建一个裸存储库......
$ cd /home/website $ mkdir www.git $ cd www.git $ git init --bare
...然后设置挂钩stuf ...
$ git config core.bare false $ git config core.worktree /home/website/www $ git config receive.denycurrentbranch ignore $ cat > hooks/post-receive #!/bin/sh GIT_WORK_TREE=/home/site/www git checkout -f
...然后提交裸存储库:
$ git add /home/website/www $ git commit -m "First commit of the bare repository" On my workstation, on a new folder, to get the whole directory : $ mkdir /Users/me/Sites/website/ $ git init $ git remote add live ssh://root@myserver.com/home/website/www.git $ git pull live master
然后它有效。如果我修改我的工作站上的文件,并想制作 他们活着,我只需要“git push live master”。
答案 0 :(得分:0)
我不建议将这些图像提交回裸仓库(如果这些图像很大或很多,那么裸仓库的大小很快就会变得非常重要,无法轻松克隆)
但是您可以使用钩子将这些图像复制回某些共享目录中,然后可以从工作站访问(并且您可以rsync,以便只获取增量)。
基本上,我建议不使用git来恢复这些图像。