сохранить измененный журнал прямо перед фиксацией - PullRequest
2 голосов
/ 20 февраля 2012

Я пытаюсь настроить файл, в котором перечислены все файлы в проекте, который был изменен.

Я хочу, чтобы это делалось автоматически при каждом коммите.Я попытался поиграться со всеми командами git log, но все равно не повезло.

Я делаю это, чтобы сигнализировать серверу, какие файлы необходимо повторно минимизировать после того, как сервер выполнит проверку в репо.

РЕДАКТИРОВАТЬ: Это мой сценарий до сих пор:

FILES="$(find /home/qwertymk/public_html -type f -name '*.js')"
CHANGED="git whatchanged -n 1 --pretty=format:"
for f in $FILES
do
 if [[ $f =~ /home/torah/public_html/ignore-folder/ ]]; then continue; fi
 if [[ $f =~ $CHANGED ]]; then continue; fi  # What do I do here?
  echo "processing - $f"
  php /home/qwertymk/jsmin/curl.php $f
done

1 Ответ

3 голосов
/ 20 февраля 2012

Вместо сохранения списка измененных файлов в сообщении о фиксации, вы можете запросить git напрямую для этой информации, используя git-whatchanged . Чтобы получить список изменений для последнего коммита, вы можете сделать:

git whatchanged -n 1

Чтобы получить список изменений между двумя именованными коммитами, вы можете сделать:

git whatchanged <since>..<until>

Вы также можете получить эту информацию из git-log , например, включая любые другие опции git-log, которые вы хотите:

git log --name-status <options>

Следуя примечаниям в комментариях, вы, вероятно, получите нужную вам информацию, до всего того, что вам нужно:

git log --name-status --pretty=format: -n 1

(замените -n 1 на все, что вам нужно для указания коммитов)

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