我有一个场景,我有一个存储库,用户可以直接访问文件,他们不知道 git 存在,并对本质上是文本文件的内容进行更改。
我克隆了那个仓库。因此,当进行提交时,使用 post-commit 挂钩将更改推送到克隆的 repo。
现在,我将克隆的仓库作为裸仓库。但是,此时我想做的是在每次推送时运行一个脚本。该脚本将读取刚刚推送的文件的内容。这被视为提交吗?我可以再次使用提交后挂钩吗?
这可以在裸回购上完成吗?既然没有工作目录?如果回购是裸露的,我不知道如何“读取”文件。
我有一个场景,我有一个存储库,用户可以直接访问文件,他们不知道 git 存在,并对本质上是文本文件的内容进行更改。
我克隆了那个仓库。因此,当进行提交时,使用 post-commit 挂钩将更改推送到克隆的 repo。
现在,我将克隆的仓库作为裸仓库。但是,此时我想做的是在每次推送时运行一个脚本。该脚本将读取刚刚推送的文件的内容。这被视为提交吗?我可以再次使用提交后挂钩吗?
这可以在裸回购上完成吗?既然没有工作目录?如果回购是裸露的,我不知道如何“读取”文件。
是的,您可以使用挂钩。但是,您必须使用较低级别的 git 命令从裸仓库中检索提交树和文件。例如 http://git-scm.com/book/ch9-2.html