2015-07-08 29 views
61

Yerel değişiklikleri belirli bir dosyaya geri almaya çalışıyorum. Hiçbir şey taahhüt edilmedi.Yerel değişiklikleri yerel bir dosyaya geri yükleme

Tüm değişiklikleri geri döndürmek istediğimde, git revert --reset HEAD gerçekleştirebilir. Ancak, bu durumda, tüm değişiklikleri tüm dosyalara geri döndürmek istemiyorum.

Onun berrak ve hatta git-revert(3) adam sayfasını okuduktan sonra, sadece bir dosyayı nasıl geri dönülür? Bana açık değildir:

NAME 
     git-revert - Revert some existing commits 

SYNOPSIS 
     git revert [--[no-]edit] [-n] [-m parent-number] [-s] <commit>... 
     git revert --continue 
     git revert --quit 
     git revert --abort 
... 

Bu How to revert a specific file in a old commit on git benzer, ancak hiçbir kaydedilmesini yapılmıştır. Ve isteğe bağlı bir sürece geri dönmek isteyen OP'den farklı olarak, sadece dosyanın MASTER'in kopyasına geri dönmesini istiyorum.

SVN altında, söz konusu dosyayı silip svn update gerçekleştirin.

Tek bir dosyada değişiklikleri nasıl değiştiririm?

+1

ah 'git checkout - '? – NightShadeQueen

+0

Teşekkürler NightShadeQueen. Ödeme yapmadım. Git tarafından sağlanan varsayılan çalışma alanını kullanıyorum. Yani, bir 'git klonu 'gerçekleştirdim ve işe gittim. – jww

cevap

110

git revert'u istemiyorsunuz. Bu önceki bir işlemi geri alır. Dosyanın git sürümünü sürümden almak için git checkout olmasını istersiniz. Genelde

git checkout -- filename.txt

, tek dosya üzerinde bir git işlemi gerçekleştirmek istediğinizde, -- filename kullanın.


+2

Ödeme yapmadım. Git tarafından sağlanan varsayılan çalışma alanını kullanıyorum. Yani, bir 'git klonu 'gerçekleştirdim ve işe gittim. – jww

+3

Farketmez. Bu komut hala işe yarayacak. Klonlandığınız hangi şubeyi kesin olarak kontrol ettiniz. Ayrıca, 'git status 'komutunu çalıştırın. Tali olmayan değişikliklerin nasıl geri alınacağını açıklayan bir tek liner olmalıdır. '(" git checkout - ... "işlevini çalışma dizinindeki değişiklikleri atmak için kullanın)' – mkasberg

+1

'git checkout -" dosya adı ile spaces.txt "' - Boşluk olması durumunda dosya adınızı içeren çift tırnak kullanın. . – RBT

İlgili konular