git - Git merge 冲突后,很多我没碰过的文件变成了要提交的更改

标签 git merge

所以我在一个分支中工作,进行一些更改,然后运行 ​​git merge master。我在我修改的一个文件上遇到了 merge 冲突(我知道如何处理),但出于某种原因,我没有触摸了一堆文件(但在 master 中更新了)突然进入我的“要提交的更改”列表。

这是为什么?我该如何解决这个问题?我不希望提交任何这些非我更改。

最佳答案

我自己也遇到了同样的问题,想出了一个中间解决方案。以后需要找到更好的。

首先要解决@NoufalIbrahim 提出的问题:至于“我不希望提交任何这些非我的更改。”,如果你不想,你为什么要进行 merge 有什么变化吗?

您误解了@grautur 的意图。需要进行更改,但不作为新提交的一部分。例如,本地添加了 1 个文件, merge 后有 100 个文件。新提交应该有 1 个更改的文件而不是 101 个更改的文件。如果无法进行自动 merge ,但发起 pull 请求并且必须有人审查提交,这一点尤其重要。您希望审阅者审阅 1 个文件,而不是 101 个文件。

我目前正在做的是:假设我们有分支“master”和“feature”。 'feature' 是从 'master' 创建的,我只对 'feature' 中的文件进行更改。当新的更改被 pull 入“master”时,“feature”内的 git merge master 将引入新文件(这些文件会在我使用的 IDE VSCode 中自动暂存)。

我接下来要做的是取消暂存所有这些文件。基本无视他们。只添加和提交我更改的文件。将“功能”推送到源/远程仓库,创建 pull 请求。当接受请求并将提交 merge 到主分支时,在本地和远程删除“功能”。将更改 pull 到本地“master”并创建一个新分支来处理新功能。这个新分支不会有一堆未暂存的文件。

可以有一个 git 命令告诉 git 忽略一堆文件而不使用 .gitignore。对此进行进一步研究。

关于git - Git merge 冲突后,很多我没碰过的文件变成了要提交的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9189867/

相关文章:

git 远程存储库包含未 merge 到本地分支的提交

R:组合两个不等长的矩阵/向量,根据相同的值匹配行

r - 使用 merge() 函数仅左连接 R 中选定的列

eclipse - 解决所有 merge 后,如何摆脱 Eclipse Git "conflict"图标?

python - 合并两个元组的元组

git - ERROR : Error fetching remote repo 'origin' , 返回状态码-1:

Git 在一个命令中添加和提交

git add *(星号)与 git add 。 (时期)

Git GUI/TortoiseGit 没有调用正确使用 powershell 的 Hook ? ( window )

mysql - R连接2个数据框