Вы можете достичь этого, используя динамический TSQL (не забудьте использовать QUOTENAME, чтобы избежать атак SQL-инъекций):
Сдвиги с динамическими столбцами в SQL Server 2005
С поворотами с динамическим Столбцы в SQL Server 2005
Обязательная ссылка на проклятие и благословения динамического SQL
Альтернативой git log --format
является команда сантехника git rev-list
. Для сценариев это рекомендуемый выбор, так как интерфейс можно полагать стабильным (хотя для простых целей, подобных этому, я был бы удивлен, если git log
недостаточно стабилен).
for sha1 in $(git rev-list HEAD) ; do
: # Do something with $sha1
done
Вы можете использовать аргумент --format
с пользовательским форматом , который включает только sha1:
git log --format=format:%H
Вышеприведенная команда дает выход например:
0375602ba2017ba8750a58e934b41153faee6fcb
4390ee9f4428c84bdbeb2fed0a461099a6c81b39
bff53bfbc56485c4c1007b0884bb1c0d61a1cf71
Вы можете циклически перехватывать хэши фиксации в Bash следующим образом:
for sha1 in $(git log --format=format:%H); do
: # Do something with $sha1
done
Это немного более подробно, чем , используя git rev-list
, но может быть вашим единственным вариантом, если вы хотите использовать параметры упорядочения или фильтрации для git log
, которые не поддерживаются git rev-list
, например -S
.