在git裸仓库中重命名分支

4

在 packed-refs 文件中重命名裸仓库中的分支是否可以?

我想将它从以下名称改为:

# pack-refs with: peeled fully-peeled 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa refs/heads/master
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb refs/heads/new

to:

# pack-refs with: peeled fully-peeled 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa refs/heads/old
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb refs/heads/master

4
看起来你并不是在问如何重命名存储库,而是在问如何重命名一个存储库内的分支。如果是这样,请注意,git branch -m适用于裸库和非裸库。 - torek
是的,非常抱歉...我的问题表述有误。你当然是正确的,我想重命名存储库中的分支。我会查看git branch -m命令,但我已经在packed-refs中进行了重命名,所以我仍然有疑问 - 我能否这样做呢?还是不行 :( - Dmitriy Kozmenko
1
直接写入 packed-refs 是可行的(至少在同一引用不存在为非打包状态时是可行的)。您可以在服务器上运行 git branch 或在客户端上使用 git ls-remote 进行检查。但总的来说,您应该只使用正常的 git 命令;这样做将使您所做的工作在未来的 git 版本中仍然有效。 - torek
谢谢torek,git branch -m真的很有效 :) 你能把git branch -m加到这个问题的答案里吗?这是正确的答案... - Dmitriy Kozmenko
1个回答

3

正如torek所述:

您可以通过执行以下命令来重命名分支

用法:

git branch -m <oldbranch> <newbranch>

来源: https://git-scm.com/book/zh/v2/Git-分支-分支的新建与合并

Git是一种版本控制系统,它使我们能够跟踪代码库中每个文件的更改历史记录。Git的一个主要特性是支持分支。分支是指某个时刻代码库中的一个副本,它可以独立于其他分支进行修改和提交。这使得团队成员能够在不互相干扰的情况下并行工作。
本文将介绍如何创建和合并分支。首先,我们将学习如何创建一个新的分支以及如何在不同的分支之间进行切换。然后,我们将了解如何使用`git merge`命令将不同的分支合并在一起。此外,还将介绍一些常见的分支策略和最佳实践。

这似乎忽略了问题中明显强调的“裸”部分。我的意思是,对于一个通常没有工作区的裸仓库,该命令如何发出?(链接页面也未提到“裸”字)。但如果Dmitriy没问题的话...(这很令人困惑...),那我又有什么理由反对呢? :) - Sz.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接