推送后自动结算

3

我有一台服务器,用来发送我的工作结果。每次执行 git push 命令之后,我都需要通过 SSH 连接并输入命令将我的远程存储库更新到最新版本:

git checkout NNNN

我可以简化这个操作吗?

P.S. 在提交这个问题之前,我已经查找了一些关于GitHooks的信息。我可以将其用于上述任务,例如在检出后重新启动Rails服务器吗?

2个回答

2

当然,你可以简化它!

假设你正在使用Github。创建一个webservice,可以使用您选择的语言从Web访问。该服务将需要接受此类请求并执行所需的工作。创建后转到Github。在项目设置中转到Settings,然后转到Service Hooks。您需要添加WebHook URL。输入您的服务的URL。就这些。 Bitbucket也有这样的功能,在您的项目的管理员区域中命名为Service。您需要创建POST服务来完成此操作。

如果您将存储库托管在自己的服务器上,则可以使用post-update hook

没有post-push钩子或类似的东西,因此您无法简单地在本地计算机上触发作业。


1

在第一次提交到远程仓库之前,为了避免出现error: refusing to update错误,我被迫执行以下操作:

git config receive.denycurrentbranch ignore

启用自动结账只需设置:
git config receive.denycurrentbranch updateInstead

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接