Soruyu yeniden okuduğunuzda, daha önce yapılmış olan değişiklikleri değil, çalışma ağacınızdaki değişiklikleri geri almak istediğiniz gibi görünüyor, ancak diğer cevapların bazıları, okumam yanlış gibi görünebilir. Açıklayabilir misin?
Değişiklikler yalnızca çalışma kopyanızdaysa, bunu yapmanın en kolay yolu, tutmak istediğiniz değişiklikleri düzenlemektir:
git add -i <file>
Ardından, dizin sürümünü kontrol ederek saklamak istemediğiniz değişiklikleri atın:
git checkout -- <file>
Ardından, henüz sahnelenmesini istemiyorsanız değişiklikleri iptal edin:
git reset -- <file>
Bu tarif yalnızca seçilen değişiklikleri dosyaya (veya belirttiğiniz dosyalara) döndürür ve daha sonra geri döndürülmesi gereken geçici bir taahhüt oluşturmaz.
Önceki işlemlerde yapılan değişikliklerin yalnızca bir kısmını seçmeli olarak uygulamak istiyorsanız, önce bir dosyayı daha önce kaydedilmiş bir duruma sıfırlayabilirsiniz:
git reset <commit_before_first_unwanted_change> -- <file>
Ardından git add -i <file>
, tutmak istediğiniz git checkout -- <file>
değişiklikleri düzenlemek, istenmeyen değişiklikleri atmak ve değişiklikleri git reset -- <file>
'bozmak' için önceki tarifi takip edebilirsiniz .