1

私は周りを検索しましたが、これを行うための最良の方法が何であるかを理解していません: 既存の CVS リポジトリ (具体的には、OpenSSH ポータブル)、またはそのリビジョン (v6.0p1 など) を git リポジトリにクローンしたい、個人用パッチの適用用。また、別の安定した OpenSSH がリリースされるたびに、変更をマージしたいと考えています。パッチを新しいバージョンにマージできるようにするためだけに、リアルタイムまたは特別なものである必要はありません。

以前の git (および SVN の経験) はありますが、CVS の経験はありません。

4

1 に答える 1

2

ベンダー ブランチを維持するか、 を使用するかの 2 つのオプションがありますgit cvsimport。どちらを使用するかは、必要な履歴の量と忍耐力によって異なります。

完全な履歴が必要で辛抱強い場合は、 を使用して CVS リポジトリ全体を git にインポートできますgit cvsimport。運が良ければ、他の誰かが既にこれを行っていて、結果を最新の状態に保っていることに気付くかもしれません。信頼できるのであれば、彼らのリポジトリを使用するのが最善の選択肢です。

完全な履歴が必要ない場合や、せっかちな場合は、ベンダー ブランチを維持できます。これは、DVCS ができる前に行っていたことです :)。現在のリリースのコピーを入手し、'vendor' という名前のブランチに入れて、それに基づいて作業してください。次のリリースが作成されたら、ベンダー ブランチに戻り、新しいリリースに合わせて更新し、必要に応じてマージ/リベースします。

DVCS を使用する場合、ベンダー ブランチが必要になる頻度は低くなりますが、git では名前の変更を識別する必要がなく、(現在の svn と同様に) meta -最新のリリースを解凍すると、作業コピー全体にデータがブリッツされます。

于 2012-08-18T21:46:15.673 に答える