我通常会提交一份提交列表以供审核.如果我有以下提交:
HEADCommit3 Commit2 Commit1...我知道我可以修改头部提交git commit --amend.但是我怎么能修改Commit1,因为它不是HEAD提交?
我需要验证推送到远程的提交消息,以防止开发人员没有提供足够的细节(字符串长度)或只提供票号.
我认为更新钩子可以用于此但它似乎没有 - 但它只适用于之前已被推送的引用.当我试图推动一个新分支时,它拒绝了,因为它找不到引用.我怀疑它也可能只是针对推送系列中的最新提交而运行.
执行此任务的钩子的正确选择是什么?
片段:
#!/usr/bin/env php
<?php
define('MINIMUM_MESSAGE_LENGTH', 10);
$exit = 0; // default exit code -> success
$ref = $argv[1];
$commitMessage = exec('git log -1 ' . $ref . ' --pretty=format:%s');
$commitMessage = trim($commitMessage);
// validations & exit($exit) follow;
Run Code Online (Sandbox Code Playgroud)
这是PHP,但问题是语言不可知