Ошибка перехвата Eclipse после фиксации: fatal: Невозможно создать '/path/my_project/.git/index.lock': файл существует - PullRequest
0 голосов
/ 21 февраля 2020

Я создал хук post-commit git, который проверяет почтовый домен автора, и, если домен de не находится в домене моей компании, хук сбрасывает коммит и освобождает файлы коммита.

Если вам интересно, почему я хочу это сделать, это мера безопасности, позволяющая избежать ненастроенных git пользователей в pu sh хранилище.

Это код упомянутого хука:

#!/bin/bash
log=$(git log)
email=$(echo $log | grep -Po "(?<=\<)[^\>]+" | head -n 1)

if [[ ! $email == *"@company.com"* ]]; then
        echo "">&2
        echo "You wont be able to commit while you have unconfigured user.">&2
        echo "">&2
        echo "Your user is $email">&2
        git reset HEAD~1
        exit 1
fi
exit 0

Этот хук прекрасно работает в CLI. Проблема возникает, когда я фиксирую из Eclipse IDE с E GIT, где мне выдается следующая ошибка fatal: Unable to create '/path/my_project/.git/index.lock': File exists. Я заметил, что причиной ошибки является команда git reset HEAD~1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...