首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >简单的git post-commit钩子将提交的文件复制到某个文件夹

简单的git post-commit钩子将提交的文件复制到某个文件夹
EN

Stack Overflow用户
提问于 2011-10-03 17:39:06
回答 1查看 15.7K关注 0票数 22

我希望自动将提交的文件复制到某个文件夹,以便可以在浏览器中查看它们,但我希望在不创建镜像主存储库(如here所示)的空存储库的情况下做到这一点,并且我希望这在提交时发生。

有没有什么简单的方法可以创建一个钩子来读取已经提交的文件,并在实时way服务器上复制/更新它们?

例如:我有一个名为/example.com的文件夹和一个git存储库。我希望当我在存储库中提交index.html时,/example.com中相应的index.html文件会用提交的文件的内容进行更新

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-03 23:24:06

这样做的一个好方法是创建一个运行git checkout -fpost-commit,并将工作树设置为web服务器公开的目录,将git目录设置为开发存储库中的.git目录。例如,您可以创建一个执行以下操作的.git/hooks/post-commit文件:

代码语言:javascript
复制
#!/bin/sh
unset GIT_INDEX_FILE
export GIT_WORK_TREE=/example.com/
export GIT_DIR=/home/whoever/development/web-project/.git/
git checkout -f

但是要注意这一点- -f意味着git可能会删除或覆盖文件,以使/example.com/与您最近提交的树相匹配。

(记住还要将.git/hooks/post-commit文件设为可执行文件。)

票数 27
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7633299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档