GIT重命名分支并保留所有提交历史记录

时间:2014-05-12 09:03:14

标签: git version-control

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

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

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

2 个答案:

答案 0 :(得分:6)

  

现在我想将分支的名称从dev更改为开发,我知道如何在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中的所有分支都只是特殊的标记引用。从development创建dev并不会复制所有内容,因此您不会浪费任何空间。

答案 1 :(得分:3)

根据man pagesgit branch -move - 移动/重命名分支相应的reflog。