Существует ли лучший способ записать, что предварительная фиксация мерзавца сцепляется для проверки какого-либо php файла в фиксацию для ошибок анализа?

def summ(a, b):
    return a[0] + b[0], a[1] + b[1]


x = 5, (2, 0), (1, 1)


def position(x):
    i = 1
    new_list = [x[i]]

    while i < x[0]:
        new_list += summ(new_list[i - 1], x[2]),
        i = i + 1

    return new_list


print(position(x))

Протестировано, и ВЫВОД является

[(2, 0), (3, 1), (4, 2), (5, 3), (6, 4)] [112 ]

7
задан prakash 6 October 2008 в 10:41
поделиться

3 ответа

Если фиксация является частичной (зафиксированы не все изменения в рабочем дереве), то эта программа make даст неверные результаты, поскольку она проверяет рабочую копию, а не поэтапную копию.

Один из способов сделать это может быть следующим:

git diff --cached --name-only --diff-filter=ACMR | xargs git checkout-index --prefix=$TMPDIR/ --
find $TMPDIR -name '*.php' -print | xargs -n 1 php -l

Который сделает копию подготовленных изображений в рабочее пространство, а затем запустит на них тестовую команду. Если какой-либо из файлов включает в себя другие файлы в сборке, вам, возможно, придется воссоздать все поэтапное изображение в тестовом дереве, а затем протестировать измененные файлы там (см .: Хук предварительной фиксации Git: измененные / добавленные файлы ).

1
ответ дан 7 December 2019 в 16:47
поделиться

Если Вам установили php5-cli, можно записать предварительную фиксацию в PHP и использовать синтаксис более знакомое с.

Просто сделайте что-то больше как.

#!/usr/bin/php
<?php /* Your pre-commit check. */ ?>
0
ответ дан 7 December 2019 в 16:47
поделиться

Я сожалею, если бы это - offtopic, но не является Вами предполагаемый запустить некоторые автоматизированные тесты (который подразумевал бы, что код не имеет никаких синтаксических ошибок) прежде, чем сделать фиксацию?

2
ответ дан 7 December 2019 в 16:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: