这可能更多是一个技术问题:
我使用 git 进行版本控制,并使用 rsync 将 PHP CMS 的文件发送到测试或生产站点。现在我想使用一个万无一失的自动化系统来跟踪当前部署的提交,我在想:
设置 git hook 以使用最新标签添加/更新文本文件并提交哈希。然后我可以轻松查找提交。
我的问题是,在预提交时,脚本不知道提交哈希。是否有任何直接的方法可以完成此任务(或达到相同目的的另一种方法)?
感谢您提前输入!
好吧,我想我有一个好的解决方案:
有一个名为 post-commit 的 git hook,这就是我所做的:
- 我将保存标签/哈希的文件放在 .gitignore 上(以避免下次提交时进行不必要的更改)
- 让 post-commit 挂钩更新版本文件。
钩子文件的内容:
#!/bin/sh
git describe --tags > version.txt
现在我确信每次提交后该文件都是最新的,因此只要在部署之前进行提交,我就已经准备好了。
Notes:令人讨厌的初学者警告:使挂钩文件可执行,如果不是,git 将忽略该文件而不发出警告。
关于 git hooks 的所有信息:http://git-scm.com/book/en/Customizing-Git-Git-Hooks
关于 .gitignore 的所有信息:http://git-scm.com/book/en/Git-Basics-Recording-Changes-to-the-Repository#Ignoring-Files
Cheers,
Martin
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)