【发布时间】:2012-05-07 20:54:00
【问题描述】:
我有 gitolite,目前创建了测试存储库并配置了用户权限,一切正常。
我现在想要的是通过使用 git cvsimport 将 cvs 存储库迁移到 git。我有新迁移的存储库。如何通过 gitolite 配置此存储库并为此存储库配置用户?
请指导我正确的方向!
【问题讨论】:
我有 gitolite,目前创建了测试存储库并配置了用户权限,一切正常。
我现在想要的是通过使用 git cvsimport 将 cvs 存储库迁移到 git。我有新迁移的存储库。如何通过 gitolite 配置此存储库并为此存储库配置用户?
请指导我正确的方向!
【问题讨论】:
您需要克隆 gitoite-adin 存储库,并声明一个新的存储库:
见“adding and removing repos”
完成后,您将向现有的本地 git 存储库(其中包含 CVS 导入的那个)添加一个新的远程:
git remote add gitolite git@server:to
(您可以根据需要命名远程源)
然后你会将你的本地仓库推送到 gitolite 管理的仓库:
git push gitolite master # to initialize the remote repo with master branch
git push gitolite --all # to push all branches
git push gitolite --tags # to push all tags
(“With GitHub how do I push all branches when adding an existing repo?”中提到的git push --all)
【讨论】:
gitolite-admin 存储库的gitolite.conf 文件中声明。一旦您声明了用户(并在上述gitolite-admin 存储库中添加了他们的公共 ssh 密钥)并推回了gitolite-admin 存储库,那么您就有一个空存储库准备好获取当前本地 CVS 导入的 Git 存储库的所有历史记录(如我的回答中所述)。