Как заставить тянуть к файлу в git? - PullRequest
1 голос
/ 21 июля 2011

У меня конфликт слияния, и я обычно могу просто переименовать файл и извлечь из репозитория или вручную отредактировать редактирование.На этот раз я зафиксировал изменения в файле, который имеет конфликты, и он находится в промежуточной области.Я попытался использовать git reset HEAD <file>, а затем снова git pull, но я все еще получаю конфликты слияния.Есть ли способ заставить перезаписать проблемный файл?

Вот сообщение, которое я получаю: error: Ваши локальные изменения в следующих файлах будут перезаписаны слиянием: db / profile_edit.php

Я изменяю имя файла на profile_edit.phpbkup.Затем я делаю git pull И все равно получаю ту же ошибку.Почему это?Файл даже больше не существует, так как его можно заменить?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 21 июля 2011

Вы можете извлечь файл из индекса с помощью git reset filename, если вы не хотите, чтобы эти изменения добавили переключатель --hard к сбросу.

Конфликты сами должны быть разрешены.

Один из вариантов - git fetch remoteRepo Это приведет к удаленному репо, но не попытается объединить ветви.

Для сравнения двух версий интересующего вас файла используйте git diff HEAD remoteRepo/remoteBranch <fileName>

Если возникают конфликты слияния, и вы хотите сохранить содержимое обоих файлов, вы ничего не можете сделать, кроме как разрешить конфликты.

0 голосов
/ 21 июля 2011

, если вы хотите выбросить все изменения, которые вы сделали одновременно с апстримом:

git fetch origin
git push -f . origin/branchA:branchA

, если вы хотите вместо этого разрешать конфликты в пользу апстрима:

git fetch origin
git merge -s recursive -Xtheirs origin/branchA

надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...