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

НАЗВА

git-cvsexportcommit — Експорт одного коміту до CVS checkout

СИНОПСИС

git cvsexportcommit [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d <cvsroot>]
	[-w <cvs-workdir>] [-W] [-f] [-m <msgprefix>] [<parent-commit>] <commit-id>

ОПИС

Експортує коміт з Git до CVS checkout, що спрощує обʼєднання латок з репозиторію Git до репозиторію CVS.

Вкажіть назву CVS checkout за допомогою параметра -w або виконайте її з кореневої теки робочої копії CVS. В останньому випадку необхідно визначити GIT_DIR. Дивіться приклади нижче.

Він робить усе можливе, щоб зробити це безпечно, перевіряє, чи файли незмінні та актуальні під час перевірки CVS, і стандартно не виконує автоматичне фіксування змін.

Підтримує додавання, видалення та коміти файлів, що впливають на бінарні файли.

Якщо коміт є комітом злиття, ви повинні вказати git cvsexportcommit, для якого батьківського обʼєкта слід застосувати набір змін.

ОПЦІЇ

-c

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

-p

Бути педантичним (параноїдальним) під час застосування латок. Запускає програму patch з параметром --fuzz=0

-a

Додати інформацію про авторство. Додає рядок автора та комітера (якщо відрізняється від автора) до повідомлення.

-d

Встановіть альтернативний CVSROOT для використання. Це відповідає параметру CVS -d. Зазвичай користувачі не хочуть встановлювати це, окрім випадків використання CVS асиметричним чином.

-f

Примусово виконати об’єднання, навіть якщо файли застарілі.

-P

Примусово виконати батьківський коміт, навіть якщо він не є прямим батьком.

-m

Додайте наданий префікс перед повідомленням коміту. Корисно для серій латок тощо.

-u

Перед початком експорту оновлюйте відповідні файли з репозиторію CVS.

-k

Зворотне розгортання ключових слів CVS (наприклад, $Revision: 1.2.3.4$ стає $Revision$) у робочому CVS checkout перед застосуванням латки.

-w

Вкажіть розташування CVS checkout, що потрібно використовувати для експорту. Цей параметр не вимагає встановлення GIT_DIR перед виконанням, якщо поточна тека знаходиться в репозиторії Git. Стандартне значення — cvsexportcommit.cvsdir.

-W

Повідомте cvsexportcommit, що поточна робоча тека є не лише текою checkout Git, але й текою checkout CVS. Таким чином, Git скине робочу теку до батьківського коміту, перш ніж продовжити.

-v

Докладний вивід.

КОНФІГУРАЦІЯ

cvsexportcommit.cvsdir

Стандартне місце розташування копії репозиторію CVS, яке слід використовувати для експорту.

ПРИКЛАДИ

Обʼєднати одну латку в CVS
$ export GIT_DIR=~/project/.git
$ cd ~/project_cvs_checkout
$ git cvsexportcommit -v <commit-sha1>
$ cvs commit -F .msg <files>
Обʼєднати одну латку в CVS (опції -c та -w). Робоча тека знаходиться в Git Repo
	$ git cvsexportcommit -v -c -w ~/project_cvs_checkout <commit-sha1>
Автоматично обʼєднувати латки, що очікують на обробку, у CVS — але тільки якщо ви точно знаєте, що робите
$ export GIT_DIR=~/project/.git
$ cd ~/project_cvs_checkout
$ git cherry cvshead myhead | sed -n 's/^+ //p' | xargs -l1 git cvsexportcommit -c -p -v

GIT

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