【问题标题】:how to make a git repository clonable by anyone如何使任何人都可以克隆 git 存储库
【发布时间】:2019-07-24 18:15:20
【问题描述】:

我在运行 apache 和 git 的 debian 9 服务器上的云上有一个远程存储库。 Apache 设置为重定向到 https/SSL

我怎样才能让任何人都可以克隆我的存储库而无需在该服务器上登录?

在我的本地计算机上,该计算机上的登录凭据为该服务器上的用户 git,

git clone git@example.com:~/MyProject

作品 但在另一台电脑上,不起作用

我试过了

$ git clone ssh://example.com/~/MyProject.git

Cloning into 'MyProject'...
user@example.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

【问题讨论】:

标签: git


【解决方案1】:

如果您想要一个未经身份验证的服务器,您可以配置git daemon 使用git 协议为项目服务。

git daemon --reuseaddr --base-path=/MyProject/ ~/MyProject/

然后用户可以通过git clone git://example.com/MyProject克隆项目 (请注意,您应该在~/MyProject/.git 下放置一个名为git-daemon-export-ok 的空文件,以告诉守护程序可以将此项目导出到公共。

【讨论】:

    【解决方案2】:

    如果你想通过 ssh 访问你的 repo,你应该使用 git 用户访问它

    尝试打开一个常规的 ssh 连接:ssh git@example.com

    如果您使用正确的密码,或设置 ssh 密钥以进行无密码连接,您应该能够克隆您的 repo:

    git clone git@example.com:~/MyProject.git
    # or
    git clone ssh://git@example.com/~/MyProject.git
    

    【讨论】:

      猜你喜欢
      • 2017-07-15
      • 2020-02-07
      • 2013-11-04
      • 2012-09-03
      • 2017-03-04
      • 2012-07-15
      • 2011-05-18
      • 1970-01-01
      • 2022-07-03
      相关资源
      最近更新 更多