Git:一个特性分支在主分支中出现,但我没有合并它们。

4

有没有简单的方法可以找到它是如何合并到主分支中的?

我在我的git reflog或git log中找不到它,只有对origin/feature_branch_name的提交,但它却出现在了origin/main_branch_name中。

我使用以下命令创建我的分支:

git checkout -b feature_branch_name

我使用以下命令将我的分支推送到远程仓库:

git push origin feature_branch_name

而 Git 的输出是

<hash1>..<hash2> feature_branch_name -> feature_branch_name

第二天,我检查了我们的主分支并执行了pull操作,当我pull时,主分支出现了一些新文件。有什么想法可以帮助我追踪这个问题吗?


2
已经检出了我们的主分支并拉取了 - 所以你已经拉取到了主分支 - RomanPerekhrest
您IP地址为143.198.54.68,由于运营成本限制,当前对于免费用户的使用频率限制为每个IP每72小时10次对话,如需解除限制,请点击左下角设置图标按钮(手机用户先点击左上角菜单按钮)。 - d.brown
2
那么,在功能分支上有特定的提交被合并到了主分支吗?你和其他人一起在这个项目上工作吗?你可以查看日志,但如果是快进合并,就不会有合并提交,所以你需要与你的合作者进行确认。 - Briana Swift
1
是的,功能分支上的所有提交都已合并到主分支中,当我浏览日志时只有我的提交显示出来...所以我必须和其他人交流吗?唉。 - d.brown
2
你是否在使用GitHub或其他远程托管服务来管理你的代码库?如果是Pull Request的话,也许可以解决问题,否则我认为你需要和某个人交流。抱歉。 - Briana Swift
我认为你第一次说的是对的。实际上,我认为有人将我的特性分支FF合并到另一个分支中,最终回到了主分支。我能够使用git log --ancestry-path查看到我的祖先,但是你无法看到任何文件,因为它们是快进合并的。 - d.brown
1个回答

3

查找某个文件的哪些提交(创建/修改/删除):

git log --oneline --decorate --all -- THE_NEW_FILE

这将显示提交消息的第一行以及任何相关的分支/标签。

要查看提交引入的更改

git whatchanged -1 COMMIT_HASH
or
git diff --stat COMMIT_HASH~ COMMIT_HASH

你的reflog仅记录了你的HEAD和分支头所在的位置,而不是其他用户所做的内容。要查看当前分支提交链的最近历史概述,请执行以下操作:

git log --oneline -32 

我不确定这是否是我需要的,但还是谢谢。我知道哪些提交创建了这些文件;它们是我创建的。我不知道我的特性分支如何进入主分支。到目前为止,“git log my_parent_branch ^my_feature_branch --ancestry-path”接近,但仍不完全符合我的需求。 - d.brown

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接