セットアップと設定
プロジェクトの取得と作成
基本的なスナップショット
ブランチとマージ
プロジェクトの共有と更新
検査と比較
パッチ
デバッグ
メール
外部システム
サーバー管理
ガイド
- gitattributes
- コマンドラインインターフェースの規則
- 日々のGit
- よくある質問 (FAQ)
- 用語集
- フック
- gitignore
- gitmodules
- リビジョン
- サブモジュール
- チュートリアル
- ワークフロー
- すべてのガイド...
管理
低レベルコマンド
- 2.35.1 → 2.47.0 変更なし
-
2.35.0
01/24/22
- 2.1.4 → 2.34.8 変更なし
-
2.0.5
12/17/14
書式
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
-
パッチを適用するときは、厳密(パラノイド)にします。 --fuzz=0 でパッチを呼び出します
- -a
-
作者情報を追加します。作者行と、コミッター(作者と異なる場合)をメッセージに追加します。
- -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
-
詳細表示。
例
- 1つのパッチをCVSにマージする
-
$ export GIT_DIR=~/project/.git $ cd ~/project_cvs_checkout $ git cvsexportcommit -v <commit-sha1> $ cvs commit -F .msg <files>
- 1つのパッチを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] スイートの一部