如果我在git中删除父分支,子分支会发生什么

Wil*_*ong 14 git version-control git-branch

我打算在我的git存储库中重命名一个分支.我发现这样做的简单方法是从该分支创建一个新分支并为其指定所需的名称.

之后我想删除旧分支(父分支).但是如果我这样做的话,我担心我的新分支会丢失数据.

如果删除该分支,最初对父分支进行的提交会发生什么?

Von*_*onC 11

怎么了?没有.

如果您创建另一个分支,则可以"删除"其他分支而不会丢失任何内容.分支(HEAD)只是提交的指针.
只要这些提交由分支HEAD引用(或者是分支HEAD祖先的一部分),它们就不会丢失.
即使它们不再被任何分支或标记引用,它们仍然在本地reflog(默认情况下)为90天.

但是,查看手册页git branch,这似乎更容易:

 git branch (-m | -M) [<oldbranch>] <newbranch>
Run Code Online (Sandbox Code Playgroud)

附:

-m
--move
Run Code Online (Sandbox Code Playgroud)

移动/重命名分支和相应的reflog.

-M
Run Code Online (Sandbox Code Playgroud)

即使新分支名称已存在,也可以移动/重命名分支.