gpt4 book ai didi

git - 为什么我的 Git 远程 URL 只需要在某些系统上包含我的用户名?

转载 作者:太空狗 更新时间:2023-10-29 13:59:27 27 4
gpt4 key购买 nike

我的原始问题的 Cliff's Notes 是我在 GitHub 上托管了一个论文项目 repo ,我正在使用多台机器访问以读取和写入 repo 。我有我的家用台式机,我的笔记本电脑,我的教授正在他的机器上使用 repo,我们有我们的“生产”服务器。我们一直在通过 Win7、Win8.1 和 Ubuntu 14.04 在我们的个人机器上使用这个 repo,没有任何问题。在所有这些系统上,我们都使用以下远程 URL:

https://github.com/[my-user-name]/thesis.git

...它非常适合 pull 和推送我们的 repo 协议(protocol)。然而,在生产服务器上,使用 CentOS 6.x(不确定这是否重要)我们收到错误 403 Forbidden,甚至没有机会尝试提供用户名或密码。在对此进行故障排除一段时间后(总计 n00b),我终于发现在 CentOS 机器上我必须使用远程 URL:

https://[我的用户名]@github.com/[我的用户名]/thesis.git

为什么只有一个的机器会出现这种情况?

更新:

下面 VonC 的回答有助于理解问题的根源。我在 CentOS 6.x 上的 Git 版本远远落后于当前版本,尽管 yum update 报告它是最新的。

众所周知,CentOS 软件库落后于最新的组件。以 Git 为例,我可以通过 CentOS 6 基本存储库获得的最新 Git 版本是 1.7.1,它比 Git 的实际当前版本远远落后。我已经尝试了很多解决方案,包括下面 VonC 的有用答案中列出的解决方案,例如使用 rpmforge 存储库覆盖基本版本并安装较新版本的 Git,以及此处未列出的其他解决方案,但都无济于事.我的下一步是尝试从源代码构建 Git,如果有任何结果,我会报告结果。

最佳答案

如 GitHub 帮助页面“HTTPS cloning errors”中所述,这是因为您的 CentOS 6.x 具有旧的 git 版本。 (输入 git --version 确认)

如果你可以在那里升级 git,你就不需要将你的用户名附加到 url。
如果您无法升级,更改远程 URL 以添加您的用户名确实是一种解决方法。

git remote set-url origin https://yourusername@github.com/user/repo.git

您还可以尝试为任何 github url 添加您的用户名:

git config --global credential.https://github.com.username YOUR_USERNAME

但如果 git 太旧,最后一条命令可能甚至不被支持。

关于git - 为什么我的 Git 远程 URL 只需要在某些系统上包含我的用户名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35954310/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com