【问题标题】:Cant create new branch while retaining master branch保留主分支时无法创建新分支
【发布时间】:2020-06-06 11:13:21
【问题描述】:

在我尝试通过任一命令创建新分支后,要么未创建新分支,要么主分支消失。如果我使用命令git branch newBranch,则不会创建分支。 如果我使用命令git checkout -b newBranch 创建新分支但主分支消失了。 `

【问题讨论】:

  • 主分支没了?这是否意味着如果你运行“git branch”命令,就没有master分支?
  • 是的,新分支似乎只是替换了主分支。如果我想恢复 master 分支,我运行 checkout -b master 并且再次只有 master 分支。
  • 你了解什么是分支吗?如果您签出一个分支,您将更改您的工作树(您可以看到的文件)以匹配该分支。它就像一个传送机器:你可以说“我想在伦敦”或“我想在巴黎”,然后噗,你就在那里。但是你不能同时在伦敦和巴黎。如果你跳到巴黎,那么伦敦就“消失了”。

标签: git github intellij-idea


【解决方案1】:

首先,使用新的git switch 命令,而不是old confusing git checkout one。

 git switch -c newBranch

其次,确保你有一个master 分支开始,这意味着git log --decorate --oneline --graph --all --branches 在master 分支中显示至少一个提交。
不是“origin/master”,而是master。
您可以使用git branch -avv列出所有个分支。

如果您在新初始化的存储库中的提交为零,则根本不会有分支,as seen here。

OP mat1 确认in the comments:

我已经首次推送到远程仓库,现在它可以工作了。
因为我没有进行初始提交和推送,所以我无法创建分支。

【讨论】:

  • git switch -c newBranch 不会创建新分支,也不会切换到新分支,因为新分支甚至不存在。
  • @mat1 你使用的是什么版本的 Git? git switch -c option 旨在创建一个新分支。
  • git 版本 2.16.1.windows.1
  • @mat1 你能先更新到 Git 2.27 吗? (github.com/git-for-windows/git/releases)
  • 在更新 git 之前,我首先推送到远程仓库,现在它可以工作了。因为我没有进行初始提交和推送,所以我无法创建分支。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-22
  • 2017-10-26
  • 1970-01-01
  • 2017-06-09
  • 2023-02-11
相关资源
最近更新 更多