git 从主分支合并到本地分支
git merging from master to local branch
如果 master 在本地分支 B1(从以前版本的旧 master 创建的分支)之前有更改,那么如何将 master(最新的 master)的更改合并到本地分支 B1(从以前的 master)在相同 and/or 不同文件上,它也有不同于最新主控的本地更改。
>> git checkout B1
>> git merge master
错误:
CONFLICT (content): Merge conflict in views/index.html
Auto-merging scripts/services/eService.js
CONFLICT (content): Merge conflict in scripts/services/eScreenService.js
Auto-merging scripts/directives/confirmService.js
Auto-merging scripts/controllers/submitFormController.js
CONFLICT (content): Merge conflict in scripts/controllers/submitFormController.js
Automatic merge failed; fix conflicts and then commit the result.
我需要了解在这种情况下如何处理代码冲突?我怎样才能恢复文件中的合并更改(撤消 >>>>>>> master
and/or <<<<<<< HEAD
文件 git revert HEAD{X}
中的注释没有帮助)
你可以退一步:git merge --abort
或者您可以手动解决冲突:git mergetool
(然后提交您的更改)
但您可能喜欢另一种选择:git rebase
将带走您的更改,将上游分支快速转发到您的本地分支,然后重新应用您的更改。
每种方式都适用于另一种情况,因此请考虑一下您要实现的目标。
git-revert
恢复一些现有的提交,不修改 HEAD 提交。 Git Revert
而且你在冲突之后还没有提交一些东西。
git status
是你最好的朋友。它可以每秒为您提供指导。
git status
You have unmerged paths.
(fix conflicts and run "git commit")
(use "git merge --abort" to abort the merge)
争取
git merge --abort
这将还原您的更改。
编辑
您可以使用
git checkout --ours file
保留当前分支的更改并删除其他分支。使用 --他们的 反之亦然。
你可以这样做(当你在分支机构时):
git fetch
git rebase origin/master
如果 master 在本地分支 B1(从以前版本的旧 master 创建的分支)之前有更改,那么如何将 master(最新的 master)的更改合并到本地分支 B1(从以前的 master)在相同 and/or 不同文件上,它也有不同于最新主控的本地更改。
>> git checkout B1
>> git merge master
错误:
CONFLICT (content): Merge conflict in views/index.html
Auto-merging scripts/services/eService.js
CONFLICT (content): Merge conflict in scripts/services/eScreenService.js
Auto-merging scripts/directives/confirmService.js
Auto-merging scripts/controllers/submitFormController.js
CONFLICT (content): Merge conflict in scripts/controllers/submitFormController.js
Automatic merge failed; fix conflicts and then commit the result.
我需要了解在这种情况下如何处理代码冲突?我怎样才能恢复文件中的合并更改(撤消 >>>>>>> master
and/or <<<<<<< HEAD
文件 git revert HEAD{X}
中的注释没有帮助)
你可以退一步:git merge --abort
或者您可以手动解决冲突:git mergetool
(然后提交您的更改)
但您可能喜欢另一种选择:git rebase
将带走您的更改,将上游分支快速转发到您的本地分支,然后重新应用您的更改。
每种方式都适用于另一种情况,因此请考虑一下您要实现的目标。
git-revert
恢复一些现有的提交,不修改 HEAD 提交。 Git Revert
而且你在冲突之后还没有提交一些东西。
git status
是你最好的朋友。它可以每秒为您提供指导。
git status
You have unmerged paths.
(fix conflicts and run "git commit")
(use "git merge --abort" to abort the merge)
争取
git merge --abort
这将还原您的更改。
编辑
您可以使用
git checkout --ours file
保留当前分支的更改并删除其他分支。使用 --他们的 反之亦然。
你可以这样做(当你在分支机构时):
git fetch
git rebase origin/master