Ответ 1
Использование
git diff test
покажет различия между рабочим каталогом test
и версией репозитория. Использование diff
покажет фактические различия; если вас это не интересует
git diff --name-only test
Я новичок в работе с git, но у меня есть репозиторий, содержащий файл с именем "test". Я хочу проверить, изменился ли этот файл. Есть ли способ сделать это?
Из большой картинки я пишу командный файл, который будет выполнять клон git репозитория, если что-то изменилось (что я выяснил с помощью опции сухого запуска). ИСКЛЮЧЕНИЕ для тестового файла (что означает, что даже если тестовый файл был изменен, я не хочу выполнять клонирование git
Сообщите мне, нужны ли вам какие-либо разъяснения и спасибо за ваше время.
Использование
git diff test
покажет различия между рабочим каталогом test
и версией репозитория. Использование diff
покажет фактические различия; если вас это не интересует
git diff --name-only test
Вы можете передать имя файла или каталога в git diff
чтобы увидеть только изменения в этом файле или каталоге.
Если вы "пишете командный файл", то --exit-code
к git diff
может быть особенно полезен. например.
git diff --exit-code test
или же:
git diff --exit-code path/to/source/dir
Который вернет 1, если есть изменения в файле с именем test
(или в любом другом указанном файле или каталоге) или 0 в противном случае. (Разрешение сценарию переходить на результат.)
Чтобы увидеть только имена измененных файлов (и не полный diff), используйте --name-only
xor, вы можете использовать -s
чтобы вообще не получать никакого вывода, а только код выхода.
Git не предоставляет методы для запроса истории удаленного репозитория. Команды Git предназначены для запуска в локальном репозитории, поэтому сначала нужно clone
(fetch
было бы дешевле, если бы вы клонировали один раз раньше). Тем не менее, есть некоторые способы обойти это ограничение: