українська мова ▾ Topics ▾ Latest version ▾ git-merge-index last updated in 2.35.0

НАЗВА

git-merge-index - Виконати об’єднання файлів, які потребують об’єднання

СИНОПСИС

git merge-index [-o] [-q] <merge-program> (-a | ( [--] <file>…​) )

ОПИС

Ця команда шукає <файл>(и) в індексі та, якщо є записи злиття, передає SHA-1 хеш для цих файлів як аргументи 1, 2, 3 (порожній аргумент, якщо файлу немає), та <файл> як аргумент 4. Режими файлів для трьох файлів передаються як аргументи 5, 6 та 7.

ОПЦІЇ

--

Не інтерпретуйте жодних додаткових аргументів як варіанти.

-a

Виконайте об’єднання для всіх файлів в індексі, які потребують об’єднання.

-o

Замість того, щоб зупинятися на першому невдалому злитті, виконайте їх усі одночасно — продовжуйте злиття, навіть якщо попередні злиття повертали помилки, і повертайте код помилки лише після всіх злиттів.

-q

Не скаржтеся на невдалу програму злиття (збій програми злиття зазвичай вказує на конфлікти під час злиття). Це стосується порцелянових модулів, які можуть потребувати генерації власних повідомлень.

Якщо git merge-index викликається з кількома <file> (або -a), то він обробляє їх по черзі, зупиняючись лише тоді, коли merge повертає ненульовий код виходу.

Зазвичай це виконується за допомогою скрипта, який викликає імітацію Git команди «merge» з пакета RCS.

Зразок скрипта під назвою «git merge-one-file» включено до дистрибутива.

ПОПЕРЕДЖЕННЯ ПОПЕРЕДЖЕННЯ ПОПЕРЕДЖЕННЯ! Порядок "злиття об’єктів" у Git відрізняється від порядку об’єктів злиття у програмі "merge" у RCS. У наведеному вище порядку оригінал розташований першим. Але порядок аргументів для програми злиття "merge" з 3 елементами полягає в тому, щоб оригінал знаходився посередині. Не питайте мене чому.

Приклади:

torvalds@ppc970:~/merge-test> git merge-index cat MM
This is MM from the original tree.		# original
This is modified MM in the branch A.		# merge1
This is modified MM in the branch B.		# merge2
This is modified MM in the branch B.		# current contents

або

torvalds@ppc970:~/merge-test> git merge-index cat AA MM
cat: : No such file or directory
This is added AA in the branch A.
This is added AA in the branch B.
This is added AA in the branch B.
fatal: merge program failed

де останній приклад показує, як git merge-index припинить спроби об’єднання, якщо щось поверне помилку (тобто, cat поверне помилку для файлу AA, оскільки його не існувало в оригіналі, і тому git merge-index навіть не намагався об’єднати файл MM).

GIT

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