Github 拉取请求显示越来越多的旧合并
Github pull requests showing more and more old merges
我其实对 git 很有经验,但这种奇怪的事情让我很困惑。
我们有一个受保护的主分支。每次我想添加代码时,我都会从 master 那里拉取最新的代码,然后基于它创建一个新的本地分支。提交我的更改,将它们推送到我的新分支,然后 将 PR 返回给 master。
标准的东西。
我在这个特定的回购协议中注意到的一件事是我在我的分支中得到越来越多的"changes",它们只是从几天前合并。
例如,我最近的 PR 有:
Merge branch 'master' of github.com:xxxx/xxxx into master
一共8次,最大的11天。 在所有这些合并之前,我的一个旧提交 已经合并到 master 中,我每次做 PR 时都会看到这个提交。最后是我在分支中添加的单个提交。
当查看更改的文件时,只包括我在我的分支中实际更改的文件,所以合并我的 PRs 是完全无害的。这只是奇怪和烦人。
同样在本地,如果我删除一个已经合并的分支,我会收到警告 "contains commits that weren't merged into master",尽管实际上并没有。
每次我做一个新的 PR,那个旧的提交是日志中的第一件事,所以我想知道是否有什么东西搞砸了。
有什么想法吗?即将核对我的存储库并重新克隆。
看起来您正在从 master 分支出来,然后没有使用来自 master 的新更新来更新您的分支。您可以在您的分支中获取新提交并使用 rebase
同步历史记录
我推荐以下易于遵循的过程:
git checkout master
git pull
git checkout [feature branch]
git rebase origin/master -i
git push origin [feature-branch] --force
在变基步骤中,您可以选择所有提交,也可以使用提交旁边的 s
或 squash
选项来压缩它们,而不是接下来出现的默认 pick
当文本编辑器为您的交互式变基打开时,您的提交。
在那之后你的主分支的历史应该与你的特性分支的历史同步并且只有你的提交会显示(我建议压缩所有这些合并提交 - 如果你遵循这个变基工作流程你不会甚至需要做任何合并,你可以只做 rebases——这不会添加他们自己的提交)。
干杯!
我其实对 git 很有经验,但这种奇怪的事情让我很困惑。
我们有一个受保护的主分支。每次我想添加代码时,我都会从 master 那里拉取最新的代码,然后基于它创建一个新的本地分支。提交我的更改,将它们推送到我的新分支,然后 将 PR 返回给 master。
标准的东西。
我在这个特定的回购协议中注意到的一件事是我在我的分支中得到越来越多的"changes",它们只是从几天前合并。
例如,我最近的 PR 有:
Merge branch 'master' of github.com:xxxx/xxxx into master
一共8次,最大的11天。 在所有这些合并之前,我的一个旧提交 已经合并到 master 中,我每次做 PR 时都会看到这个提交。最后是我在分支中添加的单个提交。
当查看更改的文件时,只包括我在我的分支中实际更改的文件,所以合并我的 PRs 是完全无害的。这只是奇怪和烦人。
同样在本地,如果我删除一个已经合并的分支,我会收到警告 "contains commits that weren't merged into master",尽管实际上并没有。
每次我做一个新的 PR,那个旧的提交是日志中的第一件事,所以我想知道是否有什么东西搞砸了。
有什么想法吗?即将核对我的存储库并重新克隆。
看起来您正在从 master 分支出来,然后没有使用来自 master 的新更新来更新您的分支。您可以在您的分支中获取新提交并使用 rebase
同步历史记录我推荐以下易于遵循的过程:
git checkout master
git pull
git checkout [feature branch]
git rebase origin/master -i
git push origin [feature-branch] --force
在变基步骤中,您可以选择所有提交,也可以使用提交旁边的 s
或 squash
选项来压缩它们,而不是接下来出现的默认 pick
当文本编辑器为您的交互式变基打开时,您的提交。
在那之后你的主分支的历史应该与你的特性分支的历史同步并且只有你的提交会显示(我建议压缩所有这些合并提交 - 如果你遵循这个变基工作流程你不会甚至需要做任何合并,你可以只做 rebases——这不会添加他们自己的提交)。
干杯!