【发布时间】:2022-12-16 05:18:24
【问题描述】:
code.go 在main 分支上目前包含:
package code
some Golang code() {
}
code.go 在分行 new-branch 目前有:
package code
some other Golang code() {
}
even more code() {
}
理想情况下,我希望最终结果是:
package code
some Golang code() {
}
some other Golang code() {
}
even more code() {
}
我怎样才能将new-branch“合并”到main上以达到上述结果?当我合并时,git 给了我冲突,因为 some Golang code() 和 some other Golangcode() 在分支之间的同一条线上。
如果我选择“接受两个传入”,我的大括号之一会丢失,从而导致语法错误。我只是希望生成的 code.go 文件以完整的形式包含所有这 3 个代码块。
【问题讨论】:
-
对我来说,我手动完成,我不知道是否有更简单的方法,所以你可以比较更改(在 vscode 上)并从新分支复制代码并接受主分支然后过去复制的代码将是功能。您可以使用 git diff 命令来查看和比较更改,或者使用 vscode 比较更改,或者使用 GitHub Desktop 来更容易地注意到更改
-
请注意,“接受两个传入”是您的 IDE 的一部分,不是Git 的一部分。有一种合并形式叫做联合合并,
git merge-file甚至支持它,但它通常不适合这里,无论如何你应该“手动”进行这个特定的合并。最多,在使用 Git(不是某些 IDE)时,您可能会在三个输入文件上调用git merge-file --union并手动调整结果。