Git mv重命名存储库中的文件或目录。如何重命名Git存储库本身?


对于重命名Git存储库的含义有多种可能的解释:显示的名称、存储库目录或远程存储库名称。每一种都需要不同的重命名步骤。

显示的名字

重命名显示的名称(例如gitweb所显示的名称):

编辑.git/description以包含存储库的名称。 保存文件。

存储库目录

Git不会引用包含存储库的目录的名称,就像Git克隆主子目录所使用的那样,所以我们可以简单地重命名它:

打开命令提示符(或文件管理器窗口)。 更改到包含存储库目录的目录(即,不要进入存储库目录本身)。 重命名目录(例如,从命令行使用mv或从GUI使用F2热键)。

远程存储库

重命名远程存储库如下所示:

转到远程主机(例如https://github.com/User/project)。 按照主机的指示重命名项目(将因主机而异,但通常设置是一个很好的起点)。 转到本地存储库目录(即,打开命令提示符并更改到存储库目录)。 确定新的URL(例如,git@github.com:User/project-new.git) 使用Git设置新的URL: git remote set-url origin git@github.com:User/project-new.git


Git存储库没有名称。如果需要,可以重命名包含工作树的目录。


重命名PRJ0。转到项目1。然后编辑位于项目的.git/配置文件中的URL变量。


例如,在一个新的存储库中,在$ git初始化之后,.git目录将包含文件.git/description。

看起来是这样的:

不愿透露姓名的库;编辑这个文件'description'来命名存储库。

在本地存储库上编辑它不会在远程存储库上更改它。


如果您的意思是重命名存储库,请转到存储库并单击“admin”,然后重命名。

一旦你看到红色框警告你一些天塌下来和其他事情,去读这个问题。


如果你在Eclipse中并且已经安装了Egit,那么你可以重命名包含项目的存储库,方法如下:

1)在Eclipse中:关闭存储库中的所有项目。

2)在文件系统中:找到存储库所在的目录/文件夹。

3)在文件系统中:重命名存储库所在的目录/文件夹。

4)在文件系统中:打开包含存储库的目录/文件夹,重命名任何您打算重命名的项目的项目目录/文件夹,使其与项目的新名称匹配。(这不是必需的,但它使Eclipse中的项目名称与存储库中的项目目录/文件夹保持一致。)

5)在Eclipse中:删除存储库中的所有项目,但确保不要勾选“从文件系统中删除内容”复选框。(该项目应该不再包含文件系统内容的正确位置,因此数据在任何情况下都不能被删除,但安全总比遗憾好。)

6)在Eclipse中:从菜单中选择文件|Import…选择。

7)在Eclipse中:在对话框中打开“Git”文件夹,选择“Projects from Git”,然后单击“Next”。

8)在Eclipse中:在对话框中选择“Local”,然后单击“Next”。

9)在Eclipse中:在对话框中点击“Add…””按钮。

10)在Eclipse中:在对话框中,确保存储库旁边的复选框被选中,然后单击“Finish”。

11)在Eclipse中:在对话框中选择存储库并单击“Next”。

12)在Eclipse中:在对话框中选择“Import existing projects”单选按钮,选择“Working Directory”,然后点击“Next”。

13)在Eclipse中:在对话框中选中你想要进行的项目旁边的复选框,然后单击“完成”。

14)在Eclipse中:如果需要,重命名存储库中的任何项目。(为了保持Eclipse和文件系统之间的一致性,将它们的名称与存储库目录/文件夹中的项目目录/文件夹相同。)


在服务器端,像往常一样使用mv命令重命名存储库: mv oldName。git newName.git 然后在客户端,将[remote "origin"] URL的值更改为新的值: url = example.com/newName.git

这对我很管用。


简单来说,只需删除Eclipse项目(不要选择磁盘上的内容),然后重新导入该项目。

Eclipse将识别连接到Git的项目,并将其放入Git透视图中。

这招很管用。


重命名你的GitHub帐户的任何存储库:

转到要重命名的特定存储库 导航到设置选项卡 在存储库名称部分中,键入想要放置的新名称并单击Rename


Git本身没有指定存储库名称的规定。根目录的名称是与存储库名称相关的唯一真实来源。

但是.git/description只被一些应用程序使用,比如GitWeb。


对于Amazon AWS codecommit用户,

aws codecommit update-repository-name --old-name MyDemoRepo --new-name MyRenamedDemoRepo

参考:


如果你正在使用GitLab或GitHub,那么你可以图形化地修改这些文件。

使用GitLab

转到项目设置。在那里,您可以修改项目的名称,最重要的是,您可以重命名存储库(这是您开始进入危险部分的时候)。

完成此操作后,必须使用更新本地客户机配置

git remote set-url origin sshuser@gitlab-url:GROUP/new-project-name.git

主要更改的名称是这里(img 1),也更改readme。Md (img 2)


转到远程主机(例如,https://github.com/<用户>)。 打开库 单击“设置”页签。 在“存储库名称”下重命名(并按下重命名按钮)。


在Windows 10上,通过命令行,这个方法很管用:

git checkout <oldname>
git branch -m <newname>

从如何重命名本地和远程Git分支

这是一个本地存储库(不在任何远程设备上)。


在浏览器上打开git存储库,找到“设置”,你可以看到重命名按钮。

输入新的“存储库名称”并点击“重命名”按钮。


你试过在包中更改项目名称吗?json和执行命令git init重新初始化现有的git,而不是?

您现有的Git历史将仍然存在。


Github作为你的遥控器

在Github上重命名远程回购

关于远程存储库,如果您使用Github或Github Enterprise作为远程保存/分发存储库的服务器位置,您可以直接在repo设置中重命名存储库。

从主回购页面,设置选项卡在右边,回购名称是页面上的第一项:

Github将把请求重定向到新的URL

当你重命名一个回购时,Github中一个非常好的功能是,Github将保存旧的回购名称和所有相关的url,并将流量重定向到新的url。由于您的用户名/org和回购名称是URL的一部分,重命名将改变URL。

由于Github保存旧的回购名称,并将请求重定向到新的url,如果任何人在试图访问问题、wiki、明星或追随者时使用基于旧回购名称的链接,他们仍然会到达Github网站上的新位置。Github还重定向低级Git命令,如Git克隆,Git获取等。

更多信息请参见Github帮助重命名回购

重命名本地回购名称

正如其他人所提到的,回购的本地“名称”通常被认为是根文件夹/目录名称,您可以更改该名称、移动或将文件夹复制到任何位置,这完全不会影响回购。

Git被设计成只关心根文件夹中的文件。


这是一个非常简单的解决方案,尽管有些人可能会认为它“不优雅”或“黑客”,它掩盖了我的git不专业。

Verify that your local repo has everything committed and pushed (to remote origin). Go to the website of the remote host (for example, https://github.com/User/project-original-name). Follow the host's instructions to rename the repo (will differ from host to host, but usually Settings is a good starting point). (For the purposes of this guide, suppose you renamed your repo to "project-new-name".) Locally remove your whole repo (e.g., rm -r project-original-name). Do a "fresh checkout": git clone https://github.com/User/project-new-name

注意:如果回购的另一个用户不遵循这些说明,只是在未来进行拉取,我不知道这会产生什么影响。


@Parison

Server Side: mv oldName.git newName.git
Client Side: ./.git/config change [remote "origin"] | url to newName.git

“重命名git存储库本身”的含义不明确,但有一种解释是更改远程git存储库的URL。

git remote set-url origin url

https://www.commands.dev/workflows/change_url_of_remote_git_repository

我收藏^页,它告诉我命令,并允许我玩周围的参数。超级有用,我觉得。