Я сделал git pull
из общего репозитория git, но что-то пошло не так после того, как я попыталсяgit revert
. Вот ситуация сейчас:
$ git stash
Source/MediaStorageAndFileFormat/gdcmImageCodec.cxx: needs merge
Source/MediaStorageAndFileFormat/gdcmJPEGLSCodec.cxx: needs merge
Source/MediaStorageAndFileFormat/gdcmPNMCodec.cxx: needs merge
Testing/Source/DataStructureAndEncodingDefinition/Cxx/TestDS.cxx: needs merge
Utilities/socketxx/socket++/sockstream.cpp: needs merge
Source/MediaStorageAndFileFormat/gdcmImageCodec.cxx: needs merge
Source/MediaStorageAndFileFormat/gdcmJPEGLSCodec.cxx: needs merge
Source/MediaStorageAndFileFormat/gdcmPNMCodec.cxx: needs merge
Testing/Source/DataStructureAndEncodingDefinition/Cxx/TestDS.cxx: needs merge
Utilities/socketxx/socket++/sockstream.cpp: needs merge
Source/MediaStorageAndFileFormat/gdcmImageCodec.cxx: unmerged (2aafac967c35fa4e77c3086b83a3c102939ad168)
Source/MediaStorageAndFileFormat/gdcmImageCodec.cxx: unmerged (78cc95e8bae85bf8345a7793676e878e83df167b)
Source/MediaStorageAndFileFormat/gdcmImageCodec.cxx: unmerged (2524db713fbde0d7ebd86bfe2afc4b4d7d48db33)
Source/MediaStorageAndFileFormat/gdcmJPEGLSCodec.cxx: unmerged (4bb4ba78973091eaa854b03c6ce24e8f4af9e7cc)
Source/MediaStorageAndFileFormat/gdcmJPEGLSCodec.cxx: unmerged (ad0982b8b8b4c4fef23e69bbb639ca6d0cd98dd8)
Source/MediaStorageAndFileFormat/gdcmJPEGLSCodec.cxx: unmerged (4868371b7218c6e007fb6c582ad4ab226167a80a)
Source/MediaStorageAndFileFormat/gdcmPNMCodec.cxx: unmerged (f7a1b386b5b13b8fa8b6a31ce1258d2d5e5b13c5)
Source/MediaStorageAndFileFormat/gdcmPNMCodec.cxx: unmerged (6ce299c416fbb3bb60e11ef1e54962ffd3449a4c)
Source/MediaStorageAndFileFormat/gdcmPNMCodec.cxx: unmerged (75c8043a60a56a1130a34cdbd91d130bc9343c1c)
Testing/Source/DataStructureAndEncodingDefinition/Cxx/TestDS.cxx: unmerged (79c2843f2649ea9c87fa57662dafd899a5fa39ee)
...
fatal: git-write-tree: error building trees
Cannot save the current index state
Есть ли способ сбросить все это?
Спасибо
--mixed
аргумент также являетсяgit reset
поведением по умолчанию, если аргумент не указан. Справочная страница для справки.git reset
(по умолчанию) также--mixed
подходит и эффективна здесь. Согласно слиянию - Git unmerged path проблема : это переключится на HEAD и скажет git забыть о любых конфликтах слияния и оставить рабочий каталог как есть. Heracek, это то, что происходит?git stash
. Делатьgit reset --mixed
решил это.Это сработало для меня:
Делать
И проверьте, есть ли у вас
Unmerged paths
Прикрепите их
git add
к каждому из них и попробуйтеgit stash
снова.источник
git reset --mixed
, но она сработала и показалась мне более подходящей для моего случая, потому что я получил ошибку после,git stash
а неgit revert
.git merge
, или эквивалент мерзавца слияния, и он пытался объединить два разных набора изменений в этот файл, но не удалось.Чтобы следить за реакцией Малата, вы можете избежать потери изменений, создав патч и применив его позже.
Храните ваш патч вне папки репозитория для безопасности.
источник
mv
снова установить патч в каталог, из которого вы его создали. 1.git diff
2.mv patch.txt /tmp
3.git stash
4.mv /tmp/patch.txt .
5.patch -p0
Я использовал:
Я потерял некоторые изменения, но это нормально.
источник
git revert
попытки объединить изменения из прошлого; Вы правильно привыклиgit reset
просто перематывать часы. К сожалению,git stash
это не работает с конфликтами слияния.может быть, в вашем git-репозитории есть несколько незакрепленных путей, которые вы должны решить, прежде чем копировать.
источник
Это произошло для меня, когда я пытался скрыть свои изменения, но затем мои изменения вступили в конфликт с текущим состоянием моей ветви.
Я так
git reset --mixed
и сделал, а затем решил конфликт с git и снова спрятал.источник