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

  • Bryan Smith

    Bryan Smith

    12 Mart 2006
  • discokatze

    discokatze

    23 EYLÜL 2009
  • EEVblog

    EEVblog

    4 NİSAN 2009