Git cvsexportcommit并添加新文件

时间:2013-03-04 15:58:16

标签: git cvs

我对perl知之甚少,而且我在将功能添加到git-cvsexportcommit.perl以添加在切换到cvs时在git项目上创建的新文件时遇到了麻烦。我总是得到一个错误,如

cvs status: nothing known about `private/includes/suiviAnnuelpdf.php'
Huh? Status 'Unknown' reported for unexpected file 'no file suiviAnnuelpdf.php' 
你知道吗?

由于

1 个答案:

答案 0 :(得分:0)

我不知道你是否找到了解决方案,但我刚刚这样做并遇到了类似的问题(我的文件是我在Git迁移之前的提交中从CVS中删除的文件)。问题是我没有对我的Git仓库进行任何更改,因此cvsexportcommit试图重播最后一次更改,即删除此文件。 CVS抱怨说它对文件一无所知(我把它删除了。)

为了将来参考,这是我刚用来从Git repo向CVS发送提交的内容。您需要准备好CVS沙箱,我将调用foo-CVS和git repo,我将其称为foo

cd /tmp
cvs co -d foo-CVS foo
git clone /my/foo.git
cd foo
<DO THE CHANGE on file.txt>
git add file.txt
git commit file.txt
git cvsexportcommit -w ../foo-CVS -v -u HEAD
cd ../foo-CVS
cvs commit -F .msg file.txt

这个命令也可以为你做提交,但我觉得最好先阅读进入CVS的变化,直到我完全信任这个过程。