49

git を使用して CVS リポジトリと連携するためのベスト プラクティスとヒントは何ですか?

4

5 に答える 5

22

同様の質問への回答をここに書きました。

これは、中央の CVS リポジトリに変更をプッシュし続けなければならない場合に、驚くほどうまく機能します。

于 2009-03-02T19:12:20.623 に答える
11

私は友人のために Git のデモを行うために Git-CVS のやり取りをしただけでしたが、とても簡単でした。

  • の最新のコピーをインストールする必要がありますcvspsGit cvsimportこれを使用して CVS 履歴にアクセスします。
  • 大規模なプロジェクトの場合、CVS リポジトリの完全なコピーをコンピューターに取り、ローカルで実行することで、初期セットアップがはるかに高速になることがわかりました。git cvsimport

    $ rsync rsync://yourprojecthost.com/cvsroot/yourproject/*  
    $ mkdir myproject.git  
    $ cd myproject.git  
    $ git cvsimport -p -x -v -d :local:/path/to/cvsroot/yourproject 
    

-p の後の -x は非常に重要であることに注意してください。これは -x を cvsps に渡します。詳細については、cvsps の man ページを参照してください。

于 2009-02-27T17:12:24.103 に答える
8

リモート CVS、ローカル Gitの独自のワークフローの詳細を書きました

于 2010-07-02T13:59:10.177 に答える
1

少しメタ回答。git'guerilla style'を使用せざるを得ない場合、つまり、会社がバージョン管理にcvsを使用している場合、ワークステーションでgitを使用して作業を楽にする場合は、次のようなことを検討してください。

CVS=realCvsPath
# commit to the git first
if ($ARGV[0] && $ARGV[0] eq "commit")
{
system 'git commit -a';
}

# execute the appropriate cvs program
# ===================================
exec "$CVS", @ARGV

このファイルを「cvs」と呼び、実際のCVSコマンドの前のパスを含めます。それ以外の場合は、cvsよりも古いgitコミットを使用できますが、これはあまり役に立ちません...

于 2009-06-16T10:53:27.203 に答える