Как использовать мои изменения для слияния в git? - PullRequest
3 голосов
/ 23 июня 2010

Как заставить «мои изменения» при слиянии в git?Кто-то поместил все каталоги bin в git, и теперь у меня ужасный конфликт слияния: (

Теперь он говорит следующее:

Когда вы решили эту проблему, запустите "git rebase -продолжить ". Если вы предпочитаете пропустить этот патч, вместо этого запустите" git rebase --skip ". Чтобы восстановить исходную ветку и остановить перебазирование, запустите" git rebase --abort ".

Я делаюНЕ хочу объединять, я просто хочу удалить все эти файлы, используя мои изменения.

РЕДАКТИРОВАТЬ: Большинство файлов было успешно объединено, либо через автоматическое объединение, либо из-за отсутствия конфликта.Однако существует еще несколько таких, как следующий.

предупреждение: не удается объединить двоичные файлы: src / reports / obj / Debug / TempPE / GroupMailDS.Designer.cs.dll (HEAD против добавленного gitignore)

Ответы [ 3 ]

8 голосов
/ 23 июня 2010

Я не уверен на 100% в этом, но я думаю, что это хороший случай для этого:

git merge otherbranch -s recursive -X ours

Эта команда пытается объединить ветку темы в вашу ветку с проверкой, используя рекурсивную стратегию. Опция -X ours - это подмножество рекурсивной стратегии, которая автоматически разрешает конфликты, предполагая, что ваша ветвь, в которой вы в данный момент находитесь, является авторитетной.

1 голос
/ 23 июня 2010

Вы можете:

  • git rm каталог obj (который содержит все эти двоичные файлы и не должен был быть зафиксирован в первую очередь)
  • добавитьДиректива .gitignore, гарантирующая, что любой будущий каталог obj не появится в git status (и не будет добавлен)
  • git push этого нового дерева, что помогает распространять факт, что 'obj'каталог также должен исчезнуть из других репозиториев Git (следовательно, вообще не вызывать слияния).

Если вы можете получить согласие всех остальных участников, вы можете:

Но поскольку это предполагает замену опубликованной истории новой, это следует делать только в случае согласия других пользователей.

0 голосов
/ 23 июня 2010

Полагаю, вы можете просто заменить их двоичные файлы на свои (поскольку в действительности слияние невозможно) или просто получить ненужные двоичные файлы. После того, как вы сделали, просто git rebase --continue

...