1

gitosis在我的 Ubuntu 机器上,突然间,它在旧路径上找不到任何存储库。

昨天这工作:

git clone git@mymachine.com:myproject.git

今天,我收到了回复:

fatal: 'myproject.git' does not appear to be a git repository

我没有对我的机器进行任何更改,经过一些测试后我发现我可以通过~gitosis用户目录中的 git 符号链接访问存储库,所以这仍然有效:

git clone git@mymachine.com:git/myproject.git

(git 符号链接指向同一目录中的“存储库”)

我非常希望避免更改所有克隆项目的配置文件中的远程路径。你能帮我如何配置 git 以便我可以再次从根路径访问我的存储库吗?

更新:我发现我也不能再添加新的存储库了。将 repo 添加到 后gitosis.conf,将远程原点设置为包含该git/目录并使用

git push origin master:refs/heads/master

我明白了

致命:“mynewproject.git”似乎不是 git 存储库

所以现在我只能更新现有的存储库,并且只有当我更改远程路径以包含git目录时。

最好的,保罗

4

2 回答 2

0

如前所述使用完整路径意味着完全绕过 gitosis。因此,您的解决方法实际上并不是一种解决方法,这就解释了为什么会push失败。

于 2011-03-29T11:03:38.857 回答
0

唯一对我有帮助的是:

  • 使用 tar czf repos.tgz 备份存储库
  • 备份 gitosis.conf
  • 使用 aptitude 重新安装 gitosis 删除 gitosis && aptitude install gitosis
  • 在 gitosis-init 之后使用旧密钥将存储库移回
  • 签出 gitosis-admin 并将旧的 gitosis.conf 移动到目录中,然后将其推回

现在一切都在运行

于 2011-04-03T21:22:40.407 回答