我在尝试将旧存储库导入 gitolite 时看到了上述错误。
gitolite 存储库目录包含“裸”存储库的“.git”文件夹。这意味着如果想将存储库导入 gitolite,他应该执行以下操作:
-- 确保 oldrepo 是一个裸 git 存储库
-- 以 gtolite 用户身份运行以下代码
cd $HOME
cp -R oldrepo/.git repositories/oldrepo.git
gitolite setup
我的错误是将旧存储库作为包含“.git”的目录。我发现这是错误的。
例如我的旧存储库:
os-HP /home/gitrepo/repositories $ ll scripts/.git/
total 52
drwxrwsrwx 8 gitrepo gitrepo 4096 Jan 25 10:59 .
drwxrwsrwx 3 gitrepo gitrepo 4096 Jul 26 15:48 ..
drwxrwsrwx 2 gitrepo gitrepo 4096 Jan 25 10:49 branches
-rwxrwxrwx 1 gitrepo gitrepo 8 Jan 25 10:53 COMMIT_EDITMSG
-rw-rw-r-- 1 gitrepo gitrepo 91 Jan 25 10:59 config
-rwxrwxrwx 1 gitrepo gitrepo 73 Jan 25 10:49 description
-rwxrwxrwx 1 gitrepo gitrepo 23 Jan 25 10:49 HEAD
drwxrwsrwx 2 gitrepo gitrepo 4096 Jan 25 10:49 hooks
-rwxrwxrwx 1 gitrepo gitrepo 264 Jan 25 10:53 index
drwxrwsrwx 2 gitrepo gitrepo 4096 Jan 25 10:49 info
drwxrwsrwx 3 gitrepo gitrepo 4096 Jan 25 10:52 logs
drwxrwsrwx 133 gitrepo gitrepo 4096 Jun 28 08:50 objects
drwxrwsrwx 4 gitrepo gitrepo 4096 Jan 25 10:49 refs
与 gitolite 附带的测试存储库相比:
ey ~/repositories $ ll testing.git/
total 40
drwx------ 7 gitrepo gitrepo 4096 Jul 26 02:37 .
drwx------ 5 gitrepo gitrepo 4096 Jul 26 08:46 ..
drwx------ 2 gitrepo gitrepo 4096 Jul 26 02:37 branches
-rw------- 1 gitrepo gitrepo 66 Jul 26 02:37 config
-rw------- 1 gitrepo gitrepo 0 Jul 26 05:16 git-daemon-export-ok
-rw------- 1 gitrepo gitrepo 120 Jul 26 05:16 gl-conf
-rw------- 1 gitrepo gitrepo 23 Jul 26 02:37 HEAD
drwx------ 2 gitrepo gitrepo 4096 Jul 26 05:13 hooks
drwx------ 2 gitrepo gitrepo 4096 Jul 26 02:37 info
drwx------ 10 gitrepo gitrepo 4096 Jul 26 03:05 objects
drwx------ 4 gitrepo gitrepo 4096 Jul 26 02:37 refs