【问题标题】:Git branches - statuses mixed-up?Git 分支 - 混合状态?
【发布时间】:2015-10-13 16:39:53
【问题描述】:

我为我的存储库克隆了一个本地主节点,我每天都会使用拉取请求更新它

我已经使用以下命令创建了 2 个分支,并且我都在这两个分支上工作。这些也经常被重新定位为master

    git checkout -b bug1

    git checkout -b feature1

我切换到分支 b1,为 bug1 推送了一些更改并等待审核完成。同时,我切换到 feature1 分支并开始进行更改,但尚未在 feature1 分支上执行“git add”或“git commit”。

观察

  • 在这种状态下,当我切换到 master 或 bug1 分支并执行 git status 时,我看到了我在分支 'feature1' 上所做的更改。
  • git log 在 master 和 feature 分支上反映正确的状态
  • git log 在 bug1 分支上也反映了我上次提交等待 gerrit 审查的正确状态

附加信息(如果有任何意义)

  • 我使用 windows git 客户端并使用“git review”从分支推送代码

澄清

  • 当我查看git status 时,我看到一个分支上的更改正在另一个分支上完成,这正常吗?

  • 在这种状态下,如果我在分支 bug1 中执行 git add -a,它不会导致 feature1 分支的更改还作为下一次提交的一部分并推送到 bug1 分支吗?

  • 我做错了什么?

【问题讨论】:

  • 您的工作目录和暂存区未与任何分支关联。只有提交组织在带有分支等的图表中。切换分支时将仅保留本地更改,前提是您更改的文件在两个分支之间没有差异。

标签: git branch status


【解决方案1】:

当我检查 git 状态时,我看到一个分支上的更改正在另一个分支上完成,这是否正常?

是的,这是 git 的正常行为。由于您尚未将更改应用到任何分支(您的更改未说明),因此如果可能,它会自动合并。

在这种状态下,如果我在分支 bug1 中执行 git add -a 会不会导致 feature1 分支的更改也作为下一次提交的一部分并推送到 bug1 分支?

不,不会。

我是不是做错了什么?

这次好像不行。但是您对 git 如何工作的理解程度似乎很糟糕。我建议你阅读this book 并使用搜索this website

【讨论】:

  • 太完美了。我试过了,它奏效了。是的。我肯定会阅读这些链接。谢谢马克西姆
猜你喜欢
  • 2015-03-15
  • 2012-12-03
  • 2023-03-06
  • 2021-10-08
  • 1970-01-01
  • 2019-04-29
  • 2018-08-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多