gpt4 book ai didi

Git:git diff show changes,但 merge 说是最新的?

转载 作者:行者123 更新时间:2023-12-05 07:49:36 27 4
gpt4 key购买 nike

所以我有两个分支:master 和 other。我将其他分支 merge 到主分支中,但由于某种原因,一次提交的源代码没有改变。

我可以通过运行 git log 在 master 中看到那些提交,但实际的源代码没有改变。 other 分支有新变化,master 没有。

所以运行:

git diff master..other dir_name

给我看这个:

--- a/dir_name/views/purchase_order_report.xml
+++ b/dir_name/views/purchase_order_report.xml
@@ -60,9 +60,9 @@
<span t-field="o.partner_id.name"/>
<div t-field="o.partner_id"
t-field-options='{"widget": "contact", "fields": ["address"], "no_marker": true}'/>
- <t t-if="o.partner_id.child_ids.search([('type', '=', 'invoice')])">
+ <t t-if="o.partner_id.child_ids.filtered(lambda r: r.type == 'invoice')">
<span>Attn:
- <span t-esc="o.partner_id.child_ids.search([('type', '=', 'invoice')])[0].name"/>
+ <span t-esc="o.partner_id.child_ids.filtered(lambda r: r.type == 'invoice')[0].name"/>
</span>
</t>
</div>

+ 行也应该在 master 中,但由于某些原因不是。

并做:

git checkout master
git merge other
Already up-to-date.

所以看起来有些事情搞砸了。

更新。我还挑选了一些从 masterother 分支的提交。也许这也导致了一些问题?

最佳答案

我的直觉说 master 中有一些提交不在 other 中。 git-merge merge 实际提交 - 您拥有不同文件的事实并不意味着它们没有 merge 。

尝试运行:

git checkout other
git merge master

然后查看文件是否被更改。如果是,那正是我上面描述的原因。

编辑:如果你想在 other 中对 master 进行更改只是为了这个文件,你可以在 master 上找到更改文件的提交 和 cherry-pick 它们(google git cherry-pick - 请注意,这会引入整个提交,这在您的情况下可能是不可取的),或者手动应用它们。无法通过 merge 获得“仅此文件”。

关于Git:git diff show changes,但 merge 说是最新的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37205900/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com