українська мова ▾ Topics ▾ Latest version ▾ git-sh-setup last updated in 2.43.0

НАЗВА

git-sh-setup — Загальний код налаштування скриптів оболонки Git

СИНОПСИС

. "$(git --exec-path)/git-sh-setup"

ОПИС

Це не та команда, яку кінцевий користувач хотів би запускати. Ніколи. Ця документація призначена для тих, хто вивчає скрипти на зразок Porcelain та/або пише нові.

Скрипт «git sh-setup» призначений для завантаження (за допомогою оператора .) іншими скриптами оболонки з метою налаштування деяких змінних, що вказують на стандартні теки Git, а також декількох допоміжних функцій оболонки.

Перш ніж отримувати його, ваш скрипт повинен налаштувати кілька змінних; USAGE (та LONG_USAGE, якщо такі є) використовується для визначення повідомлення, яке видається функцією оболонки usage(). SUBDIRECTORY_OK можна встановити, якщо скрипт може запускатися з вкладеної теки робочого дерева (деякі команди цього не роблять).

Скриптлет встановлює змінні оболонки GIT_DIR та GIT_OBJECT_DIRECTORY, але не експортує їх у середовище.

ФУНКЦІЇ

die

вихід після видачі наданого повідомлення про помилку до стандартного потоку помилок.

usage

вийти разом із повідомленням про використання.

set_reflog_action

встановлює змінну середовища GIT_REFLOG_ACTION у вигляді заданого рядка (зазвичай це назва програми), якщо вона ще не встановлена. Щоразу, коли скрипт виконує команду git, яка оновлює посилання, створюється запис у журналі reflog із використанням значення цього рядка, щоб залишити запис про те, яка саме команда оновила посилання.

git_editor

запускає редактор на вибір користувача (GIT_EDITOR, core.editor, VISUAL або EDITOR) для заданого файлу, але виводить помилку, якщо редактор не вказано, а термінал не працює належним чином.

is_bare_repository

виводить true або false у стандартний потік виводу, щоб вказати, чи є репозиторій голим репозиторієм (тобто без повʼязаного робочого дерева).

cd_to_toplevel

виконує команду chdir, щоб перейти до верхнього рівня робочого дерева.

require_work_tree

перевіряє, чи поточна тека знаходиться в робочому дереві репозиторію, в іншому випадку завершує роботу.

require_work_tree_exists

перевіряє, чи існує робоче дерево, повʼязане з репозиторієм, і в іншому випадку завершує роботу. Часто це робиться перед викликом cd_to_toplevel, що неможливо зробити, якщо немає робочого дерева.

require_clean_work_tree <action> [<hint>]

перевіряє, чи робоче дерево та індекс, повʼязані з репозиторієм, не мають незафіксованих змін у відстежуваних файлах. В іншому випадку програма видає повідомлення про помилку у форматі Неможлива <дія>: <причина>. <підказка> та завершує роботу. Приклад:

require_clean_work_tree rebase "Будь ласка, зафіксуйте або збережіть їх."
get_author_ident_from_commit

виводить код для використання з eval для встановлення змінних GIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL та GIT_AUTHOR_DATE для заданого коміту.

create_virtual_base

змінює перший файл таким чином, що залишаються лише рядки, спільні з другим файлом. Якщо спільного матеріалу недостатньо, то перший файл залишається порожнім. Результат підходить як віртуальна база вхідних даних для 3-стороннього злиття.

GIT

Частина набору git[1]