SORU
4 HAZİRAN 2009, PERŞEMBE


Bul ve Git repo silinmiş bir dosya geri yükleme

Git deposu olduğumu söylüyor. Bir dosyayı silmek ve bu değişikliği tamamlamak. Çalışmaya devam ediyorum ve biraz daha tamamlar. Daha sonra bu dosyayı geri getirmem gerekiyor buluyorum.

Bir dosya git checkout HEAD^ foo.bar, kullanarak ödeme yapabileceğimi biliyorum ama gerçekten o dosya silindi ne zaman bilmiyorum.

  1. Verilen bir dosya silinmiş taahhüt bulmak için en hızlı yolu nedir?
  2. Bu geri benim çalışma kopyası içine dosya almak için en kolay yolu ne olurdu?

Benim günlükleri el ile taramak için, belirli bir SHA için tüm proje kontrol ve el ile özgün proje kontrolümü içine kopyalayın gerek yok diye umuyorum.

CEVAP
11 Temmuz 2009, CUMARTESİ


Son verilen yolunu etkileyen taahhüt bulabilirsiniz. Dosyayı KAFASINA işlemek değil, bu silmiş olmalı işlemek.

git rev-list -n 1 HEAD -- <file_path>

At kasaya sürümü önce, (**5) şapka sembol kullanarak kaydetme:

git checkout <deleting_commit>^ -- <file_path>

Ya da bir komut, eğer $file söz konusu dosya vardır.

git checkout $(git rev-list -n 1 HEAD -- "$file")^ -- "$file"

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Alexander Johnson

    Alexander Jo

    26 Temmuz 2008
  • Drakinen

    Drakinen

    1 EYLÜL 2008
  • Rachel Talbott

    Rachel Talbo

    26 Ocak 2011