git - git合并重复提交
问题描述
我的情况如下:
我在分支 A 上工作。在分支 B 上工作的人做了一些更改,我需要在分支 A 上继续开发。我最终签出到分支 B,拉取他们的更改,检查回分支 A 并进行 git 合并。现在,在 github 上,我更改的文件包括他们的文件,我的提交历史记录包括他们来自分支 B 的提交历史记录。为什么会发生这种情况是有道理的,但是我如何恢复这个/下次解决这个问题?
解决方案
这是 的预期行为git merge
。
假设情况:
A---B---C---D---E---F branch-A
\ /
X---Y---Z branch-B
合并后,您会看到如下日志:
A---B---X---C---Y---D---Z---E---F---(merge commit) branch-A
如果您不想看到合并提交并且仍然看到您的队友提交,您可以使用git rebase
.
如果您根本不想看到队友的提交,您可以使用git merge --squash
它实际合并两个分支,而无需创建合并提交,因此无需合并两个日志历史记录。
推荐阅读
- javascript - 尝试使用 window.open 在 HTML 中打开一个新窗口不起作用
- python - 我将如何在 python 中使用尖括号读取输出
- python - Python用两行而不是一行编写
- ruby-on-rails - 通过 Stripe Checkout 支付后如何更改 Rails 对象字段?
- javascript - Vuejs表单在数组中获取多个值
- laravel - Laravel 策略总是返回 403
- java - 如何从 JavaFX 中的 ComboBox 中获取所选项目的数量?
- amazon-web-services - Terraform,ElasticSearch:错误:InvalidTypeException:错误设置策略
- c++ - 如何在 c++17 中使用嵌套的静态模板结构
- flutter - Flutter iOS 风格的 UIKit 动态视图动画