我想重命名我在GitHub上的一个存储库,但当我看到一个大大的红色警告时说:

我们将不设置任何重定向从旧的位置 您需要更新本地存储库以指向新的位置 重命名可能需要几分钟才能完成

有人知道如何手动完成#1和#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…,但他们仍然鼓励你这样做,以避免混淆。

希望有帮助。如果你有任何问题或帖子不够清楚,请告诉我。

其他回答

这个答案现在已经过时了!GitHub现在将转发到新的位置。 详情请看这个答案。


之所以有这个警告是因为#1不能手动创建。

如果您是唯一一个在存储库上工作并链接到存储库的人,那么您可以在本地回购和web页面中更改远程。

然而,首先在github上有一个公共存储库的原因是,你可以让其他人克隆你的存储库并链接到你的github项目页面。


旧的url github.com/<用户名>/<存储库>归github所有。 当他们不设置任何重定向到新的url,没有人可以。 所以除了你要告诉的人以外,每个人的事情都会破裂。

这个问题有多严重,取决于你自己。 如果你在其他服务器上有官方项目页面, 那么github的url可能不是什么大问题。 如果你在邮件列表和目录中使用github url宣传你的项目, 那么您可能不应该更改回购名称。


更改repo名称的另一种方法是创建一个新的存储库,并在旧的存储库中(也作为repo中的提交)留下关于如何到达新repo的说明。

如果你不想让你的新回购被列为旧回购的一个分支,你需要创建一个新的github账户。 您可以将其他帐户添加为两个存储库的合作者。

我尝试在网页上重命名存储库:

点击右边页面的顶部,它是你的头像。 你可以看到设置图标,点击它,然后你可以在个人设置下找到存储库。 单击存储库,输入存储库目录,选择要重命名的存储库。 然后你会进入选择的存储库,你会发现设置的图标被添加到顶部行,只需点击它,输入新的名称,然后点击重命名。

好了,很简单。

这是我找到的最简单的方法

去你的回购链接,例如:https://github.com/someuser/someRepo.git 单击设置选项卡。

你首先看到的是你的回购名称,你可以编辑它。

注意:-如果你在本地克隆了repo,手动更改它的文件夹名,就这样。

如果你是这个项目的唯一工作人员,这不是一个大问题,因为你只需要做第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

此解决方案适用于使用GitHub桌面的用户。

从GitHub.com上的设置重命名您的存储库 现在在桌面上单击“同步”。

完成了。