it-swarm.com.ru

Eclipse/Git - Pull Failed Dirty Worktree

Как гласит заголовок, я пытаюсь извлечь из git-репозитория, которым я делюсь, между моим другом и мной, и я могу зафиксировать, он может зафиксировать, но всякий раз, когда один из нас пытается вытащить его, возвращается, что это не удалось: DIRTY_WORKTREE

Мы оба - новички в git и не знаем, как решить эту проблему.

31
Ariana

Мне удалось исправить подобную проблему с помощью клиента командной строки git. В то время как Eclipse (egit) говорил только DIRTY_WORKTREE, в командной строке я видел несколько конфликтующих файлов. Используя git merge master из командной строки, я мог легко разрешить конфликты, тогда как в Eclipse . Так что для меня это кажется проблемой egit.

14
Clerenz

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

С EGit: Сброс вашей текущей головы :

Выберите Team -> Reset... в проекте. Откроется диалоговое окно, в котором вы можете выбрать ветку или тег.

Сбросьте HEAD в вашей текущей ветке, чтобы сбросить индекс и рабочее дерево до последнего коммита в указанной ветке.

Тогда попробуй тянуть.

11
VonC

У меня были незафиксированные изменения. После того, как я их совершил, а затем слил, проблема грязного рабочего дерева исчезла.

8
ununiform

Кажется, это означает, что в версии, в которой вы сейчас находитесь, есть изменения, которые еще не зафиксированы. Поэтому вы должны либо удалить эти правки, либо зафиксировать их. Обратите внимание, что если вы передадите их, у вас могут возникнуть конфликты слияния.

1
noname

Просто удалите .gitignore, присутствующий в папке проекта, а затем объедините . Объединение покажет конфликты, которые вам нужно разрешить, а затем нажмите изменения.

1
abagri

В Eclipse я перешел в Team Synchronizing View и оттуда щелкнул правой кнопкой мыши по моему проекту и нажал «перезаписать», чтобы перезаписать все локальные изменения. Затем повторите попытку слияния.

0
osoblanco

В моем случае DIRTY_WORKTREE было вызвано этой последовательностью:

  1. В коммите я также зафиксировал некоторые файлы, которые я должен был проигнорировать
  2. В следующем коммите я изменил .gitignore, который игнорирует вышеуказанные файлы
  3. Попробуйте rebase поверх другой ветки, где мое изменение на .gitignore отсутствует 

В этом сценарии Eclipse думает, что ваше рабочее дерево грязное. Действительно, не очевидно сравнивать два набора файлов, когда один из двух игнорирует некоторые файлы, а другой - нет.

Чтобы решить проблему в Eclipse я сделал следующее:

  • Измените .gitignore так, чтобы он был таким же, как в ветке, на которую я хочу перебазировать
  • Счастливо начать перебазировку или перебазировку слиянием.
0
psuzzi

Если вы хотите переопределить вашу локальную ветку на ветку Origin.

Перейдите к представлению Git-репозитория> нажмите на Master origin> Выберите reset -> он покажет текущий HEAD и сброс к ветви . Выберите HARD reset, если вы хотите полностью перезаписать ваши локальные изменения

0
LadyQ

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

0
Nicolas CHALAUX

Только для того, чтобы добавить еще один случай, у меня есть DIRTY_WORKTREE, я единственный, кто принимает участие в моем проекте Github, поэтому в EGit я выполнил ветвь Push ... с «Принудительной перезаписью ветки на удаленной стороне, если она существует и разошлась»

ОПАСНОСТЬ: Если другие работают над одним и тем же проектом, это действие удалит их коммиты с момента расхождения.

0
Alejandro Silvestri

Если у вас есть изменения без фиксации, Eclipse сообщит вам, если вы попытаетесь получить изменения. Чтобы решить эту проблему, вы можете отменить изменения или сделать коммит этих файлов.

Источник: https://www.Eclipse.org/forums/index.php?t=msg&th=890477&goto=1565668&#msg_1565668

0
Sergio López Castaño

Удалите поврежденные файлы и повторите попытку. После этого нажмите ваши изменения в мерзавце. У меня та же проблема, и это сработало для меня.

0
vennapu