Пытается объединить, говорит, что в курсе, но это не так - PullRequest
2 голосов
/ 23 января 2012

Я нахожусь в моей основной ветке и пытаюсь объединить:

>git merge feature_branch1
>Already up to date

Но у моей функциональной ветви есть файлы, которых нет у моей основной ветви.

Почему это не так?объединить файл в основную ветку, и почему он говорит, что он уже обновлен?

1 Ответ

2 голосов
/ 23 января 2012

Он сообщает, что он актуален, потому что в feature-branch1 нет коммитов, которые не были объединены с вашей текущей веткой.Обратите внимание, что это делается для фиксации, а не для файлов.(То есть, - в актуальном состоянии.) Если вы сделали что-то дурацкое, чтобы удалить рассматриваемые файлы в коммите слияния или последующих коммитах, Git доверяет тому, что вы намеревались сделать, и вот вамare.

Итак, начните проверять вещи:

  • Проверьте, были ли файлы просто удалены в вашем рабочем дереве, с помощью git status или git diff.
  • Убедитесь, что ветвь объединена, визуально в gitk или с git branch --contains feature-branch.(Это только подтверждает то, что вы уже знаете.)
  • Убедитесь, что один из этих файлов действительно находится в ветви функций, а не в master, используя git show feature-branch:path/to/flie и git show master:path/to/file.Возможно, вы никогда их не фиксировали.
  • Посмотрите, какие коммиты коснулись этого пути, используя git log -- path/to/file.Возможно, вы зафиксировали удаление этих файлов.
  • Проверьте, не сделали ли вы что-то глупое в коммите слияния - git show <merge-commit> не должно печатать без diff (diff указывает на изменения, сделанные в самом коммите слияния ).Вы также можете просто проверить различия в gitk.Возможно, по какой-то причине вы удалили эти файлы во время разрешения конфликта слияния и совершили неудачное слияние.

Где-то по пути вы должны найти, где вы попали в тупик.

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