【问题标题】:Creating a branch from another branch and not having changes in first branch in I make changes in second branch [duplicate]从另一个分支创建一个分支并且在第一个分支中没有更改我在第二个分支中进行了更改[重复]
【发布时间】:2021-01-12 19:39:29
【问题描述】:

我有一个正在等待 MR 的分支(更改推送到远程分支),同时我想打开新的分支 B 并继续工作(周末)。所以我在 A 分支时创建了新的 B 分支。但是当我在分支 B 中进行更改时,A 也会得到这些更改。所以我的问题是如何在不与更改和提交有任何联系的情况下创建该分支的副本?

【问题讨论】:

  • But when I do changes in branch B, A also get those changes. - 为什么?
  • 你确定 A 会随着 B 改变吗?
  • 听起来很奇怪,你有没有切换分支并提交到正确的分支?
  • 尝试输入git branch,并检查您是否真的在分支B。另外,您如何看到分支A与分支B具有相同的变化?你是根据什么得出这样的结论的?
  • 因此,当我在 B 中进行更改并尝试签出 A 分支时,它要求添加并提交或需要存储保存,如果我添加并提交,则它允许切换到 A 分支。当我在 A 分支中时,我会在我的 vscode“源代码管理”部分中看到这些更改

标签: git branch


【解决方案1】:

听起来您正在看到尚未提交到分支的工作副本更改。因此,当您切换分支时,a 文件似乎也被另一个分支“修改”了。

这是一个示例,显示您可以在分支之间交换并“保留”对文件 (test.txt) 的修改,因为这些更改尚未提交到任何分支。

zrrbite@ZRRBITE MINGW64 /d/dev/git/branchtest (newbranch)
$ git st
## newbranch
M test.txt

切换回 master 我们看到了同样的变化,因为它还没有被提交到任何地方。

zrrbite@ZRRBITE MINGW64 /d/dev/git/branchtest (master)
$ git st
## master
M test.txt

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-17
    • 1970-01-01
    • 1970-01-01
    • 2011-05-27
    • 2020-06-03
    • 2021-08-09
    • 2018-06-21
    • 2014-02-28
    相关资源
    最近更新 更多