Git 如何在本地将当前分支合并到主分支中,并忽略主分支中的更改,但存在冲突?

Git 如何在本地将当前分支合并到主分支中,并忽略主分支中的更改,但存在冲突?,git,gitlab,Git,Gitlab,嗨,我正试图将我当前的分支合并到主分支,但它说我有合并冲突 我试了这么多答案,但没有一个能解决我的问题。gitlab给出的步骤似乎也不起作用 我试着重新定基调,退房什么的。我的头脑变得超然,很多事情我都不太明白。我想知道的是,如何按当前分支(名为test)合并到master中。我不在乎大师身上有什么。我只想将当前分支中的内容合并到master中。有人能帮我吗 完成后我应该遵循哪些步骤 git克隆测试链接请先检查git状态,查看您更改了哪些文件 使用git合并可以查看可能被覆盖的文件 然后使用 r

嗨,我正试图将我当前的分支合并到主分支,但它说我有合并冲突

我试了这么多答案,但没有一个能解决我的问题。gitlab给出的步骤似乎也不起作用

我试着重新定基调,退房什么的。我的头脑变得超然,很多事情我都不太明白。我想知道的是,如何按当前分支(名为
test
)合并到master中。我不在乎大师身上有什么。我只想将当前分支中的内容合并到master中。有人能帮我吗

完成后我应该遵循哪些步骤


git克隆测试链接

请先检查git状态,查看您更改了哪些文件

使用git合并可以查看可能被覆盖的文件

然后使用

rm文件名

然后

git合并

如果您真的不关心
master
中的内容(例如,您或其他开发人员在
master
中完成的其他工作将“丢失”,历史记录将被更改),则:

git签出主机
git reset--硬拷贝您的分支名称
这是干什么的
之前:

*B1与git合并

  • 首先将
    master
    合并到您的
    test
    分支中
  • 然后将
    test
    合并到
    master

  • 使用git rebase

  • test
  • test
    合并到
    master

  • 你说“我不在乎master中有什么,我只想合并当前分支中的内容”是什么意思
    merge
    意味着您希望合并分支和主分支中的更改,git告诉您存在冲突。(例如,一行在一个分支中被删除,但同一行在另一个分支中被更改。)Git不知道两个更改中的哪一个应该发生。@Kache所以我有可能不合并而将
    test
    覆盖到
    master
    ?当然
    master
    test
    都只是“指向”特定代码状态的分支。有很多方法可以让
    master
    指向与
    test
    中相同的代码状态,从而为后代留下不同的git历史。这取决于你想留下什么样的历史。我在下面提出了一个直截了当的答案,它失去了历史,但也有一些替代方案保留了master过去的身份,甚至可能保留了解决冲突所做的工作。那么,我只需要推动吗?然后,你也可以推动远程回购进入相同的状态。因为您要更改
    主分支的“历史记录”,所以必须强制推送。@TabachiHarada这有用吗?如果有问题,我可以投票吗?
    
    Before:
    
    * B1 <- [your-branch-name]
    | * C2 <- [master]
    |/
    * C1
    
    After:
    
    * B1 <- [your-branch-name][master]
    | * C2 ("lost")
    |/
    * C1
    
        git checkout test
        git merge master
        // fix the conflict code
        git commit -am "merge with master"
    
       git checkout master
       git merge test
    
        git checkout test
        git rebase master
        // fix the conflict code
        git commit -am "merge with master"
    
        git checkout master
        git merge test