我想重命名我在GitHub上的一个存储库,但当我看到一个大大的红色警告时说:
我们将不设置任何重定向从旧的位置 您需要更新本地存储库以指向新的位置 重命名可能需要几分钟才能完成
有人知道如何手动完成#1和#2的步骤说明吗?或者我要在当地做什么?
我想重命名我在GitHub上的一个存储库,但当我看到一个大大的红色警告时说:
我们将不设置任何重定向从旧的位置 您需要更新本地存储库以指向新的位置 重命名可能需要几分钟才能完成
有人知道如何手动完成#1和#2的步骤说明吗?或者我要在当地做什么?
当前回答
简单的解决方案:
1)打开您的项目url: https://github.com/someuser/project-name 2)在顶部,除了项目名称,点击编辑
其他回答
我看到很多积极的反馈,但我认为这些反馈并不准确/完整。
有两件事需要记住:
远程存储库 存储库的本地副本
如果你还没有在你的机器上克隆你的回购,你只需要重命名Github存储库,然后继续克隆回购,这样你就可以有一个本地副本。为了重命名Github回购,你只需要:
访问存储库站点(即https://github.com/userX/repositoryZ)。 在导航栏中,你会看到一个名为“设置”的选项卡。点击它。 只需编辑当前存储库名称,并按“重命名”。 像往常一样克隆存储库(即git Clone https://github.com/userX/repositoryU)。
如果您已经有了项目的本地副本,除了遵循上述步骤外,您还需要确保您的本地存储库(根文件夹)被正确地重命名,并且它指向正确的远程url:)链接。为了实现这一目标,请采取以下措施:
你可能想在你的回购中使用新的给定名称。要做到这一点,可以使用OS GUI(Finder, Windows资源管理器等)或控制台重命名本地文件夹:
mv -R current-repo-name new-repo-name
更改远程url。从文件夹的根目录,使用以下命令:
$ git远程设置url来源https://github.com/userX/repositoryU
or
$ git remote set-url origin git@github.com:userX/repositoryU.git
但是,第二步并不是强制性的。Github不久前宣布,他们将重定向所有来自以前存储库url的请求到指定的url。这意味着你不需要使用$ git remote set-url…,但他们仍然鼓励你这样做,以避免混淆。
希望有帮助。如果你有任何问题或帖子不够清楚,请告诉我。
简单的解决方案:
1)打开您的项目url: https://github.com/someuser/project-name 2)在顶部,除了项目名称,点击编辑
如果你是这个项目的唯一工作人员,这不是一个大问题,因为你只需要做第2点。
假设您的用户名是someuser,项目名为someproject。
那么项目的URL将是1
git@github.com:someuser/someproject.git
如果你重命名你的项目,它将改变URL的someproject部分,例如。
git@github.com:someuser/newprojectname.git
(如果您的URL不像这样,请参阅脚注)。
当您执行推或拉操作时,Git的工作副本将使用此URL。
因此,在重命名项目后,必须将新URL告知工作副本。
你可以分两步完成:
首先,cd到你的本地Git目录,并找出哪些远程名称指向该URL:
$ git remote -v
origin git@github.com:someuser/someproject.git
然后,设置新的URL
$ git remote set-url origin git@github.com:someuser/newprojectname.git
或者在旧版本的Git中,你可能需要:
$ git remote rm origin
$ git remote add origin git@github.com:someuser/newprojectname.git
(origin是最常见的远程名称,但也可能称为其他名称。)
但如果有很多人都在为你的项目工作,他们都需要执行上述步骤,也许你甚至不知道如何联系他们并告诉他们。这就是第一条。
进一步阅读:
GitHub -使用遥控器 Git参考-遥控器 Git书籍分布式工作流
脚注:
URL的确切格式取决于你使用的协议。
一些东西/一些项目 HTTPS = https://someuser@github.com/someuser/someproject.git //github.com/someuser/someproject.git
It is worth noting that if you fork a GitHub project and then rename the newly spawned copy, the new name appears in the members network graph of the parent project. The complementary relationship is preserved as well. This should address any reservations associated with the first point in the original question related to redirects, i.e. you can still get here from there, so to speak. I, too, was hesitant because of the irrevocability implied by the warning, so hopefully this will save others that delay.
这个答案现在已经过时了!GitHub现在将转发到新的位置。 详情请看这个答案。
之所以有这个警告是因为#1不能手动创建。
如果您是唯一一个在存储库上工作并链接到存储库的人,那么您可以在本地回购和web页面中更改远程。
然而,首先在github上有一个公共存储库的原因是,你可以让其他人克隆你的存储库并链接到你的github项目页面。
旧的url github.com/<用户名>/<存储库>归github所有。 当他们不设置任何重定向到新的url,没有人可以。 所以除了你要告诉的人以外,每个人的事情都会破裂。
这个问题有多严重,取决于你自己。 如果你在其他服务器上有官方项目页面, 那么github的url可能不是什么大问题。 如果你在邮件列表和目录中使用github url宣传你的项目, 那么您可能不应该更改回购名称。
更改repo名称的另一种方法是创建一个新的存储库,并在旧的存储库中(也作为repo中的提交)留下关于如何到达新repo的说明。
如果你不想让你的新回购被列为旧回购的一个分支,你需要创建一个新的github账户。 您可以将其他帐户添加为两个存储库的合作者。