【问题标题】:GIT Renaming a branch and keeping all commit historyGIT 重命名分支并保留所有提交历史
【发布时间】:2014-06-29 13:46:16
【问题描述】:

我有一个关于在 git 中重命名分支的问题。我创建了一个本地分支dev 并将分支推送到远程。我在dev 分支上做了很多工作,并定期更新远程分支。

现在我想将分支的名称从dev 更改为development。我知道如何在 GIT 中重命名分支。

我的问题是,如果我重命名分支,dev-branch 的提交历史是否会丢失?如果是,我如何保留我的提交历史?

【问题讨论】:

    标签: git version-control


    【解决方案1】:

    现在我想将分支的名称从 dev 更改为 development,我知道如何在 GIT 中重命名分支。我的问题是,如果我重命名分支,是否会丢失向 dev-branch 提交的历史记录?如果是,我如何保留我的提交历史?

    您可以简单地从您的 dev 分支创建一个新分支,然后删除 dev 分支。新分支将是您现有分支的副本,我经常这样做是为了防止在变基或合并时破坏分支。

    这是一个示例输出:

    # Normal state, for me at least
    $ git branch
    => master
    # Get into your dev branch.
    $ git checkout dev
    => dev
    # Now we make a new branch `development' based on `dev'
    $ git checkout -b development
    => development
    $ git branch -d dev
    

    如果您愿意,您可以随时在最后一步之前查看git log。但是 Git 中的所有分支都只是特殊的标记引用。从dev 创建development 不会复制所有内容,因此保留它不会浪费任何空间。

    【讨论】:

      【解决方案2】:

      根据man pages:git branch -move - 移动/重命名分支相应的引用日志。

      【讨论】:

      • 我认为应该是git branch --move,有两个破折号
      • 但这会重命名本地分支而不是远程分支?
      猜你喜欢
      • 2015-04-17
      • 1970-01-01
      • 2015-04-20
      • 2015-10-19
      • 2019-07-28
      • 2017-09-11
      • 1970-01-01
      • 1970-01-01
      • 2021-08-16
      相关资源
      最近更新 更多