セットアップと設定
プロジェクトの取得と作成
基本的なスナップショット
ブランチとマージ
プロジェクトの共有と更新
検査と比較
パッチ適用
デバッグ
メール
外部システム
サーバー管理
- 2.35.1 → 2.49.0 変更なし
-
2.35.0
2022-01-24
- 2.1.4 → 2.34.8 変更なし
-
2.0.5
2014-12-17
概要
git cvsexportcommit [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d <cvsroot>] [-w <cvs-workdir>] [-W] [-f] [-m <msgprefix>] [<parent-commit>] <commit-id>
説明
Git から CVS チェックアウトにコミットをエクスポートし、Git リポジトリから CVS リポジトリへのパッチのマージを容易にします。
-w スイッチを使用して CVS チェックアウトの名前を指定するか、CVS ワーキングコピーのルートから実行してください。後者の場合、GIT_DIR が定義されている必要があります。以下の例を参照してください。
安全な操作を行うよう最善を尽くし、CVS チェックアウト内のファイルが変更されておらず、最新であることを確認し、デフォルトでは自動コミットを行いません。
ファイルの追加、削除、およびバイナリファイルに影響を与えるコミットをサポートします。
コミットがマージコミットの場合、git cvsexportcommit に対して、どの親に対して変更セットを実行すべきかを伝える必要があります。
オプション
- -c
-
パッチがクリーンに適用された場合、自動的にコミットします。ハックが適用に失敗したり、その他の問題があった場合はコミットしません。
- -p
-
パッチ適用時に厳密 (偏執的) になります。`patch` を `--fuzz=0` で起動します。
- -a
-
作者情報を追加します。メッセージに Author 行と Committer (Author と異なる場合) を追加します。
- -d
-
使用する代替の CVSROOT を設定します。これは CVS の -d パラメータに対応します。通常、ユーザーはこれを設定する必要はありませんが、CVS を非対称な方法で使用する場合を除きます。
- -f
-
ファイルが最新でなくてもマージを強制します。
- -P
-
直接の親でなくても、親コミットを強制します。
- -m
-
提供されたプレフィックスをコミットメッセージの先頭に追加します。パッチシリーズなどに便利です。
- -u
-
エクスポートを試みる前に、CVS リポジトリから影響を受けるファイルを更新します。
- -k
-
パッチを適用する前に、CVS ワーキングチェックアウトで CVS キーワード展開(例: $Revision: 1.2.3.4$ が $Revision$ になる)を逆転させます。
- -w
-
エクスポートに使用する CVS チェックアウトの場所を指定します。このオプションは、現在のディレクトリが Git リポジトリ内にある場合、実行前に GIT_DIR が設定されている必要はありません。デフォルトは cvsexportcommit.cvsdir の値です。
- -W
-
現在のワーキングディレクトリが Git チェックアウトであるだけでなく、CVS チェックアウトでもあることを cvsexportcommit に伝えます。したがって、Git は処理を進める前にワーキングディレクトリを親コミットにリセットします。
- -v
-
詳細出力。
例
- CVS に一つのパッチをマージする
-
$ export GIT_DIR=~/project/.git $ cd ~/project_cvs_checkout $ git cvsexportcommit -v <commit-sha1> $ cvs commit -F .msg <files>
- CVS に一つのパッチをマージする (-c および -w オプション)。ワーキングディレクトリは Git リポジトリ内にある。
-
$ 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] スイートの一部