【发布时间】:2023-03-06 04:53:01
【问题描述】:
我将webfaction 用作我的web deployment。
我有一个 Django 应用程序位于:webapps/django_app/project_name/
我有一个 Git 存储库:webapps/git_app/repos/my_repo.git
my_repo.git 是一个裸仓库。它不是工作目录。
每当我从本地开发计算机推送到远程(webfaction --> my_repo.git)时,我都希望我的 django_app 获取推送的代码。
我关注了这个post,效果很好。但没有给出它是如何工作的解释。
我在 my_repo.git 的 post_recieve 钩子中添加了这两行。
#!/bin/sh
GIT_WORK_TREE=/home/username/webapps/django/myproject git checkout -f
GIT_WORK_TREE=/home/username/webapps/django/myproject git reset --hard
这两行实际上是做什么的?
此外,我的 Djangoapp 文件夹不是 git repo。仍然每当推送到 my_repo.git 时,Djangoapp 都会更新。那么它是如何工作的呢?
【问题讨论】:
标签: django git webfaction git-post-receive git-reset