1

如果消息格式不正确,我需要停止提交。

我知道可以使用 pre-receive 钩子在master分支上执行此操作。

问题是我不想在分支上这样做,而是在一个主题中。

我想用git symbolic-ref来做。

假设我有一个名为dev的主题分支来自master。如果我从主题分支的 git 命令行运行“ git symbolic-ref HEAD ”,我会得到“ refs/heads/dev ”。

我正在考虑在预接收钩子中做同样的事情来检测提交来自哪个分支。

我已经把这段代码放在了钩子里:

#! /usr/bin/perl

my $branch = `git symbolic-ref HEAD`;
print "Branch: $branch \n";

但是当我提交并从主题分支(即:dev)推送时,我得到的消息是:

Branch: refs/heads/master

...即使提交来自开发分支。

我究竟做错了什么 ?这是实现我的目标的可行方式吗?

4

0 回答 0