是否可以在TFS上添加“预先挂钩”?

时间:2015-02-19 12:27:14

标签: git tfs gruntjs pre-commit-hook pre-commit

我们希望每个在我们的git存储库中推送的人在完成之前运行“grunt”。我们通过在.git/hooks/pre-push中使用预推钩并在该文件中编写npm installgrunt来强制执行此操作。

我们还有一个TFS存储库。我正在寻找在这里使用的类似逻辑。这意味着,当有人试图检查某些内容时,我们需要一种“门禁登记”。这只会启动PowerShell并在本地运行npm installgrunt 。< / p>

我们不希望TFS做任何其他事情(运行构建,运行测试等等(所有这些都在grunt任务中完成)。)

这可能吗?谁知道怎么做?

1 个答案:

答案 0 :(得分:1)

TFS与您在本地所做的事情无关。您可以向repo添加任意数量的预提交挂钩并将它们推送到TFS。 TFS将很乐意存储这些钩子脚本。当您使用支持它们的客户端时,该客户端将在提交前执行它们。

但是如果你希望Visual Studio在提交之前运行这些钩子,你可能会运气不好。没有&#34;登记政策&#34;连接到Git时支持Visual Studio。据我所知,目前基于LibGit2的任何其他Git客户端都没有。

您可以设置链接到CI构建的分支策略,在构建服务器上有效地运行grunt任务,但我知道这不是您想要的。

LibGit2问题部分which is what Visual Studio uses to implement its git functionality提供了一些背景资料。这相应的user voice item for Visual Studio。作为使用相同底层库的well as a discussion on the GitHub for Windows client