Я не понимал, что git не понимает переименования файлов (по дизайну (!)) И перемещает некоторые файлы. Затем я положил их обратно. Теперь git log работает, но git log - нет. И Eclipse, похоже, использует последнее. (git log --follow не удалось выполнить мои переименования.)Возврат переименований, чтобы снова запустить git log
Так что я хочу, чтобы как-то вернуть HEAD туда, где он был, прежде чем я начал. Бросьте все, а затем двигайтесь вперед, как будто этого никогда не было. (Я сделал некоторые другие изменения, так как я просто сделаю их снова вручную, без проблем.)
git revert - не ответ. Он просто подтолкнет дополнительные коммиты сверху, что полностью смутит истории. Мне нужно, чтобы изменения ушли или, по крайней мере, вышли прямо из главной линии.
Так что я сделал
git branch moveDead
git reset --hard 4902b024588678cd493929955f79c6405f6dab9d
git branch beforeMoves
Все хорошо. (филиалы только для справок в будущем.)
Но я не могу сейчас толкнуть, поскольку я нажал переименованные файлы, не осознавая опасности в то время. Мне нужно сбросить пульт.
Я главный разработчик в этом репозитории, поэтому, возможно, мы могли бы восстановить основной репозиторий git из резервной копии, а затем переместить его вперед, но это было бы ужасно.
(Там нет филиалов или других осложняющих факторов.)
Не ответ, но: git _does_ понимать переименования файлов, он просто не записывает их явно. Например, «git blame» отлично работает даже при переименовании. Подумайте об использовании другого инструмента - интерфейс Git Eclipse хорош, но довольно простой. – sleske
Хотелось бы, чтобы люди перестали говорить, что Гит понимает переименование. Это не так, и Линус считает необходимым переименовать старые привычки к подрывной деятельности. git log with или without --follow может или не может следовать переименованиям, если файлы не были изменены и не сдвинуты слишком далеко. Но нет записей о фактическом движении. Я не проверял вину, но предполагаю, что он следует той же логике, что и журнал. В этом отношении Гит нарушается, и я не понимал, потому что так много людей говорят, что это работает. Есть некоторые переименования, такие как https://gist.github.com/emiller/6769886, но я их избегаю! – Tuntable