Kullanacağım git restore
(git 2.23'ten beri mevcut)
git restore --source otherbranch path/to/myfile.txt
Neden diğer seçeneklerden daha iyi?
git checkout otherbranch -- path/to/myfile.txt
- Dosyayı çalışma dizinine değil aynı zamanda hazırlama alanına da kopyalar (bu dosyayı elle kopyalayıp yürütür git add
gibi). git restore
evreleme alanına dokunmaz ( --staged
seçeneğe göre belirtilmedikçe).
git show otherbranch:path/to/myfile.txt > path/to/myfile.txt
standart kabuk yönlendirmesini kullanır. Powershell'i kullanırsanız, metin geliştirme ile ilgili bir sorun olabilir veya ikili dosya bozuksa alabilirsiniz . git restore
Dosyaları değiştirme ile tüm git
çalıştırılabilir tarafından yapılır .
Başka bir avantaj, tüm klasörü şu şekilde geri yükleyebilmenizdir:
git restore --source otherbranch path/to
veya git restore --overlay --source otherbranch path/to
dosyaları silmekten kaçınmak istiyorsanız ile. Örneğin otherbranch
, geçerli çalışma dizinindekinden daha az dosya varsa (ve bu dosyalar izlenirse ) --overlay
seçeneği olmadan git restore
bunları siler. Ama bu iyi bir varsayılan bahaviour, büyük olasılıkla dizin durumunun otherbranch
"aynı değil, mevcut şubemdeki ek dosyalarla" olduğu gibi olmasını istersiniz.