How can we implement server-side hooks, or any similar solution, to restrict git push into git server?
For example, we want to disable push of commits containing *.class
What I do is using build option together with policies in Azure DevOps. This is my azure-pipelines.yml file:
---
trigger:
  branches:
    exclude:
      - '*'
pool:
  vmImage: 'ubuntu-latest'
steps:
  - script: sudo apt-get install python3-pip
    displayName: 'Install Python PIP'
  - script: sudo apt-get install python3-setuptools
    condition: succeeded()
    displayName: Install Python SetupTools
  - script: sudo pip3 install -r requirements.txt
    condition: succeeded()
    displayName: Install Python PIP Packages
  - task: PythonScript@0
    inputs:
      scriptSource: filePath
      scriptPath: hooks/lint_checker.py
      pythonInterpreter: python3
    condition: succeeded()
    displayName: Lint Checker