【问题标题】:Git "does not appear to be a git repository" ip and port instead of domain?Git“似乎不是一个git存储库”ip和端口而不是域?
【发布时间】:2013-06-04 07:55:16
【问题描述】:

我正在尝试将我的第一个 Git 存储库提交到我在 debian-VM 上设置的 gitlab 实例。一切都将通过本地网络发生。创建新仓库后,以下命令在 gitlab 中显示。

mkdir test
cd test
git init
touch README
git add README
git commit -m 'first commit'
git remote add origin git@10.200.3.248:1337:Matt/test.git
git push -u origin master

输入git push -u origin master后会出现这种情况:

git@10.200.3.248's password:
fatal: '1337:Matt/test.git' does not appear to be a Git repository
fatal: Could not read from remote repository.

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

问题可能出在运行 Git 的端口上吗? Gitlab 可通过端口 617 访问,因此我可以通过 http://xxx.xxx.xxx.xxx:617/Matt/test 访问 GUI

我输入的密码似乎是正确的,因为错误的密码最终会出现“权限被拒绝”消息。 OT:我不知道为什么要输入密码,因为我已经生成并添加了 ssh-keys,如 gitlab 中所述,但这是另一个问题。

【问题讨论】:

    标签: git gitlab


    【解决方案1】:

    我已经解决了我的问题。给定的端口 1337 不是问题,虽然它也是错误的,因为 ssh 似乎无法处理 url 中的端口:

    Using a remote repository with non-standard port

    对我有用的 Git-url 是:

    git@10.200.3.248:repositories/Matt/test.git
    

    我的 Git 用户主目录位于 /home/git/,存储库存储在 /home/git/repositories,因此我必须将存储库添加到我的 Git 路径。

    GitLab 告诉我使用 url git@10.200.3.248:1337:Matt/test.git 的原因似乎是 GitLab 中配置的 Git 路径错误。我现在会尝试解决这个问题。

    编辑:

    /home/git/gitlab/config/gitlab.yml 中配置了错误的主机。那里的“主机”必须没有端口...如果需要,端口还有一个额外的选项。

    编辑3: 如果路径中没有repositories,仍然无法推送或获取我的测试存储库.. https://github.com/gitlabhq/gitlab-public-wiki/wiki/Trouble-Shooting-Guide#could-not-read-from-remote-repository

    也许与 rsa-keys 有关,但我不明白它是如何归类的。

    Edit4:(问题似乎已解决) 我的 RSA 密钥没问题。问题是我已将 sshd_config 配置为仅允许特定用户进行 ssh 登录。我只是将 Git 添加到允许用户列表中 AllowUsers mylogin git

    现在我不必再通过密码登录(如果正确设置了 ssh rsa 密钥,则您永远不必通过密码登录),并且该路径在没有“存储库”的情况下正常工作。现在我明白了,这只是一个普通的 ssh 连接——我以前没有意识到这一点..

    我想出来的方法:

    以 root 身份通过终端登录:

    service ssh stop #Current SSH-Connection won't be closed..
    /usr/sbin/sshd -d
    
    ====debugging mode===
    

    然后在 Git Bash 中:

    ssh -Tv git@gitlab.example.com
    

    之后在调试模式下运行 sshd 的终端抛出了一个错误,Git is not allowed login because of AllowUsers...

    之后别忘了启动你的 ssh 服务:

    service ssh start
    

    【讨论】:

    • 我不确定您是否必须指定 Matt/test.git 的本地路径:此处不应提及“repositories”。
    • 你是对的:github.com/gitlabhq/gitlab-public-wiki/wiki/… 但我仍然无法让它工作。仍在尝试.. 这次是在一个全新的 debian wheezy 上。
    • 现在看起来像是一个有效的分辨率。 +1
    • 添加 repositories/did 也是为我
    【解决方案2】:

    使用这种格式:

    git remote add origin ssh://git@xxx.xxx.xxx.xxx:1337/Matt/test.git

    user@host:[port]/path 在大多数情况下,我们省略了端口,它看起来像这样:user@host:/path ....

    【讨论】:

    • TY!我也试过这个。实际上我发布的错误消息来自这个 url-setup fatal: '1337/Matt/test.git' doesn't seem to be a git repository
    • 忘了你没有指定协议试试这个 git remote add origin ssh://git@10.200.3.248:1337/Matt/test.git
    猜你喜欢
    • 2021-07-28
    • 2017-01-26
    • 2013-08-26
    • 1970-01-01
    • 1970-01-01
    • 2015-07-01
    • 2011-11-11
    • 2015-12-30
    • 2020-09-14
    相关资源
    最近更新 更多