Есть ли кусок кода, который может предотвратить слияние / отправку изменений на git? - PullRequest
0 голосов
/ 07 мая 2020

Если мне нужен дополнительный код для запуска чего-либо на моем локальном сервере, но нужно не забыть удалить его перед нажатием на git или слиянием с защищенными ветвями.

Есть ли фрагмент кода (или vscode extension), который может уведомить git или уведомить меня при нажатии, если я забыл удалить этот код. Например, //TODO: или что-то, что git может распознать?

Ответы [ 2 ]

1 голос
/ 07 мая 2020

На стороне git: вы можете добавить хук pre-pu sh в локальное репо для поиска запрещенного слова в вашем коде и отменить pu sh, если слово найдено.

Вот, например, некоторый код, который ищет dontpush (он использует git grep -i, любой регистр "DoNtPuSh" будет работать) и не будет pu sh, если он найден в вашей локальной фиксации:

# file '.git/hooks/pre-push' :
#!/bin/bash

remote="$1"
url="$2"

z40=0000000000000000000000000000000000000000

while read local_ref local_sha remote_ref remote_sha
do
    if [ "$local_sha" = $z40 ]
    then
        # Delete: nothing to do on deleted branches
    else
        # Check if "dontpush" appears in the local commit :
        dontpush=`git grep -n -i dontpush $local_sha -- $files`
        if [ -n "$dontpush" ]
        then
            # print 'git grep' output on STDERR,
            # remove the leading "sha:" on each line
            (echo $dontpush | sed -e 's/^[^:]*://') | cat >&2
            echo >&2 "*** Found 'dontpush' tag in $local_ref, not pushing"
            exit 1
        fi
    fi
done

exit 0
0 голосов
/ 07 мая 2020
  1. Вы можете работать над отдельной веткой и позже объединиться с анализом изменений и удалением того, что не нужно.
  2. Вы можете использовать git в коде VS, когда бы вы ни щелкнули по файлу для постановки вы можете легко увидеть изменения, которые вы внесли в код, поэтому, используя это, вы также можете увидеть ту дополнительную часть, которую вы хотите удалить.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...