Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git预合并(通过预提交)钩子来标识特定目录中的文件是否已更改_Git_Github_Merge_Githooks - Fatal编程技术网

git预合并(通过预提交)钩子来标识特定目录中的文件是否已更改

git预合并(通过预提交)钩子来标识特定目录中的文件是否已更改,git,github,merge,githooks,Git,Github,Merge,Githooks,我希望创建一个预提交钩子,它执行以下操作: 如果提交是一个合并,并且它正在合并到主控(这应该只发生在PR中) 如果用户已添加或修改文件夹A中的任何文件 将合并到master的分支中A中的文件与当前在master=>中的A中的文件进行比较,如果master包含任何“新”或修改的文件(相对于合并到master中的分支),则拒绝合并 我知道我该怎么做,但有几件事我有点困惑: 我真的想使用pre-commit钩子来实现这一点吗?是否有文档标识调用此钩子时传递给它的参数 钩子是否在正在合并的分

我希望创建一个预提交钩子,它执行以下操作:

  • 如果提交是一个合并,并且它正在合并到
    主控
    (这应该只发生在PR中)
    • 如果用户已添加或修改文件夹A中的任何文件
      • 将合并到
        master
        的分支中A中的文件与当前在
        master
        =>中的A中的文件进行比较,如果
        master
        包含任何“新”或修改的文件(相对于合并到master中的分支),则拒绝合并
我知道我该怎么做,但有几件事我有点困惑:

  • 我真的想使用pre-commit钩子来实现这一点吗?是否有文档标识调用此钩子时传递给它的参数
  • 钩子是否在正在合并的分支的上下文中运行(例如,如果我将分支
    foo
    合并到
    master
    ,如果我调用
    git
    ,该操作是否会在
    foo
    的上下文中运行)
  • 谢谢