Git - merge 与 rebase

标签 git git-merge rebase git-rebase

我看过When do you use git rebase instead of git merge? .

但我想确定在这种情况下应该选择哪种解决方案:

我想在 master 上实现一个新功能,所以我将它分支到一个新的功能分支。
我在 Feature 上做了 10 次提交,而其他人在 Master 上做了其他提交。

我的问题是,如果出于测试目的,我想让我的分支与 Master 分开,但我需要使用集成的新 Master 提交来测试它。 那么,我应该将 Master merge 到 Feature 中(而不是将 Feature merge 到 Master 中,后者会在我测试之前将我的修改应用到 master 中)还是做一个rebase

最佳答案

为什么不创建一个新的分支来测试 merge 后的版本呢?例如:

git checkout -b test-merged-feature master
git merge my-feature
[... do your testing ..]

没有特别的理由在这里做一个 rebase ,但如果你还没有推送你的功能分支,那也很好。这些问题部分是关于您希望您的历史记录如何显示的——有些人不喜欢看到大量 merge ;有些人不喜欢看到大量 merge 。有些人更喜欢它作为一种跟踪哪些提交对特定功能有贡献的方式。

关于Git - merge 与 rebase ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16336014/

相关文章:

git 初始化 : Permission Denied

Git 将开发分支与生产版本的主分支 merge

Git Rebase -> 为什么在 pull 时会 merge ?

python - 使用 Python3 将 meld 设置为 git mergetool

git - git merge 多个分支

git - 将 .gitattributes 文件中的 merge 规则应用于 git rebase 调用

git - Jenkins :更新子模块时,使用子模块的最新提交重建主存储库

java - 如何将java文件推送和 pull 入git

linux - 从 public_html_source 到 public_html 的符号链接(symbolic link)

git - 使用GIT中的p4merge解决选定的 merge 冲突