最新相关博客:GitHub&Gitee&Gitlab&极狐(JihuLab)配置SSH公私钥详细过程

All commands
# Step 1 
# create main branch locally, taking the history from master
git branch -m master main

# Step 2 
# push the new local main branch to the remote repo (GitHub) 
git push -u origin main

# Step 3
# switch the current HEAD to the main branch
git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/main

# Step 4
# change the default branch on GitHub to main
# https://docs.github.com/en/github/administering-a-repository/setting-the-default-branch

# Step 5
# delete the master branch on the remote
git push origin --delete master

一、将master分支移至main

第1步-运行以下命令,使用master的历史记录创建一个名为main的分支。使用该参数-m会将master分支上的所有提交历史记录转移到新的main分支上,因此不会丢失任何内容。

git branch -m master main

二、将main推送到远程仓库

请记住,git是本地计算机上的版本控制软件,而GitHub是存储代码的远程服务器。因此,您必须将新的main分支推送到GitHub,并告诉本地分支开始跟踪具有相同名称的远程分支。

git push -u origin main

三、将HEAD指向“主要”分支

在此阶段,如果master是您的默认分支,则必须先更改指向当前分支引用的指针HEAD,才能删除它。以下命令将其指向main。

git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/main

四、在GitHub网站上将默认分支更改为’main’

至此,您已经成功将所有内容都转移到了main分支,但是如果不将GitHub中的默认分支更改为master以外的其他内容,就无法删除master分支。这是唯一需要您离开终端并在浏览器中导航到GitHub存储库的步骤。从那里,单击”Settings” -> “Branches”左导轨,然后将默认分支更改为main。我在下面提供了一些屏幕截图,GitHub在此处提供了执行此操作的说明:https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-branches-in-your-repository/changing-the-default-branch 点击直达

五、删除远程仓库上的master分支

现在本地的master已经消失了,在 GitHub 上没有指向它的东西,我们可以使用以下命令将其删除:

git push origin --delete master

搞定!我们应该不再在本地或在GitHub存储库上看到master或remotes/origin/master。
可以始终运行git branch -a命令检查。

5步将 GitHub 默认分支从 Master 更改为 Main
5 steps to change GitHub default branch from master to main
StevenMMortimer/master-to-main
How To: Safely Rename master Branch on GitHub
Easily rename your Git default branch from master to main

Renaming a branch
在这里插入图片描述

重命名分支

在这里插入图片描述
我自己远程仓库Rename this branch页面Github给出的项目成员同步branch的命令(和上面的基本相同):
在这里插入图片描述

GitHub官方的说明:关于为什么要把默认分支从master改为main、以及为什么要选择main作为新的默认分支名称 github/renaming
statement:Regarding Git and Branch Naming
code change
git - 我的 Github 仓库有 ‘main’ 和 ‘master’ 分支——它们的目的是什么?
My Github repo has ‘main’ and ‘master’ branches - what is their purpose?
How to convert existing non-empty directory into a Git working directory and push files to a remote repository

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐