Как разрешить конфликты слияния в репозитории Git

Вот вероятный вариант использования git-merge-conflict сверху:

Вы собираетесь внести git-commands некоторые изменения, но, к git сожалению, вы не в курсе:

git fetch origin
git pull origin master

From ssh://gitosis@example.com:22/projectname
 * branch            master     -> FETCH_HEAD
Updating a030c3a..ee25213
error: Entry 'filename.c' not uptodate. Cannot merge.

Итак, вы git-merge обновляетесь и пытаетесь git снова, но возникает конфликт:

git add filename.c
git commit -m "made some wild and crazy changes"
git pull origin master

From ssh://gitosis@example.com:22/projectname
 * branch            master     -> FETCH_HEAD
Auto-merging filename.c
CONFLICT (content): Merge conflict in filename.c
Automatic merge failed; fix conflicts and then commit the result.

Итак, вы git-merge решили взглянуть на изменения:

git mergetool

Боже git мой, апстрим кое-что изменил, но git-merge просто чтобы использовать git-conflict-resolution мои изменения ... нет ... их merge-conflict-resolution изменения ...

git checkout --ours filename.c
git checkout --theirs filename.c
git add filename.c
git commit -m "using theirs"

А потом попробуем git-commands в последний раз

git pull origin master

From ssh://gitosis@example.com:22/projectname
 * branch            master     -> FETCH_HEAD
Already up-to-date.

Та-да!

git

git-merge

merge-conflict-resolution

git-merge-conflict

2022-11-17T07:39:24+00:00
Вопросы с похожей тематикой, как у вопроса:

Как разрешить конфликты слияния в репозитории Git