我想重命名我在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…,但他们仍然鼓励你这样做,以避免混淆。

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

其他回答

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

访问存储库站点(即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…,但他们仍然鼓励你这样做,以避免混淆。

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

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

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

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

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

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

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

好了,很简单。

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.