Saya melakukan git pull
dari repositori shared git, tetapi ada yang tidak beres, setelah saya coba git revert
. Inilah situasinya sekarang:
$ 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
Apakah ada cara untuk mengatur ulang semua itu?
Terima kasih
--mixed
argumen tersebut juga merupakangit reset
perilaku default, ketika tidak diberikan argumen. manual untuk referensi.git reset
dengan opsi (default)--mixed
sesuai dan efektif di sini juga. Menurut gabungan - Git masalah jalur unmerged : Ini akan beralih ke HEAD, dan memberitahu git untuk melupakan konflik gabungan, dan biarkan direktori kerja apa adanya. heracek, apa itu yang terjadi?git stash
. Melakukangit reset --mixed
mengatasinya.Ini bekerja untuk saya:
Melakukan
Dan periksa apakah sudah
Unmerged paths
Perbaiki dengan
git add
masing-masing dan cobagit stash
lagi.sumber
git reset --mixed
, tetapi berhasil, dan sepertinya lebih cocok untuk kasus saya karena saya mendapat kesalahan setelahgit stash
daripadagit revert
.git merge
, atau setara gabungan git, dan mencoba untuk menggabungkan dua set yang berbeda dari perubahan ke file itu, tapi gagal.Untuk menindaklanjuti respons malat, Anda dapat menghindari kehilangan perubahan dengan membuat tambalan dan menerapkannya kembali di lain waktu.
Simpan tambalan Anda di luar folder repositori untuk keamanan.
sumber
mv
patch kembali ke direktori tempat Anda membuatnya. 1.git diff
2.mv patch.txt /tmp
3.git stash
4.mv /tmp/patch.txt .
5.patch -p0
Saya menggunakan:
Saya kehilangan beberapa perubahan, tetapi ini tidak masalah.
sumber
git revert
upaya untuk menggabungkan perubahan dari masa lalu; Anda telah menggunakan dengan benargit reset
untuk hanya memutar mundur jam. Sangat disayangkan bahwagit stash
tidak bekerja dengan menggabungkan konflik.mungkin ada beberapa path yang tidak di-emergasi di repositori git yang harus Anda selesaikan sebelum menyimpannya.
sumber
Ini terjadi pada saya ketika saya mencoba untuk menyembunyikan perubahan saya, tetapi kemudian perubahan saya memiliki konflik dengan keadaan cabang saya saat ini.
Jadi saya lakukan
git reset --mixed
dan kemudian menyelesaikan konflik git dan menyembunyikannya lagi.sumber