git durumunu gösterir değişiklikleri, git checkout -- <dosya>'t onları kaldırmak değil
Benim çalışma kopyası için tüm değişiklikleri kaldırmak istiyorum.< / ^ br . Çalışan durumu 'gösterir değiştirilmiş dosyaları. gıt< / ^ br . Yaptığım hiçbir şey bu değişiklikleri kaldırmak gibi görünüyor.< / ^ br . E. g.:< / ^ br .
rbellamy@PROMETHEUS /d/Development/rhino-etl (master)
$ git status
# On branch master
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: Rhino.Etl.Core/Enumerables/CachingEnumerable.cs
# modified: Rhino.Etl.Core/Pipelines/SingleThreadedPipelineExecuter.cs
# modified: Rhino.Etl.Tests/Rhino.Etl.Tests.csproj
# modified: Rhino.Etl.Tests/SingleThreadedPipelineExecuterTest.cs
#
no changes added to commit (use "git add" and/or "git commit -a")
rbellamy@PROMETHEUS /d/Development/rhino-etl (master)
$ git checkout -- Rhino.Etl.Core/Enumerables/CachingEnumerable.cs
rbellamy@PROMETHEUS /d/Development/rhino-etl (master)
$ git status
# On branch master
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: Rhino.Etl.Core/Enumerables/CachingEnumerable.cs
# modified: Rhino.Etl.Core/Pipelines/SingleThreadedPipelineExecuter.cs
# modified: Rhino.Etl.Tests/Rhino.Etl.Tests.csproj
# modified: Rhino.Etl.Tests/SingleThreadedPipelineExecuterTest.cs
#
no changes added to commit (use "git add" and/or "git commit -a")
rbellamy@PROMETHEUS /d/Development/rhino-etl (master)
$ git checkout `git ls-files -m`
rbellamy@PROMETHEUS /d/Development/rhino-etl (master)
$ git status
# On branch master
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: Rhino.Etl.Core/Enumerables/CachingEnumerable.cs
# modified: Rhino.Etl.Core/Pipelines/SingleThreadedPipelineExecuter.cs
# modified: Rhino.Etl.Tests/Rhino.Etl.Tests.csproj
# modified: Rhino.Etl.Tests/SingleThreadedPipelineExecuterTest.cs
#
no changes added to commit (use "git add" and/or "git commit -a")
rbellamy@PROMETHEUS /d/Development/rhino-etl (master)
$ git reset --hard HEAD
HEAD is now at 6c857e7 boo libraries updated to 2.0.9.2 and rhino.dsl.dll updated.
rbellamy@PROMETHEUS /d/Development/rhino-etl (master)
$ git status
# On branch master
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: Rhino.Etl.Core/Enumerables/CachingEnumerable.cs
# modified: Rhino.Etl.Core/Pipelines/SingleThreadedPipelineExecuter.cs
# modified: Rhino.Etl.Tests/Rhino.Etl.Tests.csproj
# modified: Rhino.Etl.Tests/SingleThreadedPipelineExecuterTest.cs
#
no changes added to commit (use "git add" and/or "git commit -a")
CEVAP
Bu davranış neden olabilir birden çok sorun vardır:
Çizgi normalleştirme son
Çok bu tür sorunları yaşadım. Git aşağı otomatik olarak crlf lf dönüştürmek geliyor. Bu, genellikle tek bir dosya içinde karışık Satır sonları neden olur. Dosya dizinde normalize alır, ama gıt sonra tekrar çalışma ağacında dosya karşı diff için denormalizes, sonuç farklı.
Ama eğer bunu düzeltmek istiyorsan eğer, devre dışı bırakmanız gerekirçekirdek.autocrlftüm Satır sonları eğer için , ve yeniden etkinleştirme değiştirin. Ya da tamamen yaparak devre dışı bırakabilirsiniz
git config --global core.autocrlf false
Yerineçekirdek.autocrlfayrıca .gitattribute dosyalarını kullanarak düşünebilirsiniz. Bu şekilde, herkes repo kullanarak aynı normalleştirme kuralları kullandığından emin, karışık Satır sonları depo girmesini engelleyen yapabilirsiniz.
Ayrıca ayarlama düşününçekirdek.safecrlfEğer isterseniz uyarmaya dönüşümsüz normalleştirme yapılması zaman sizi uyarmak için git.
Git manpages demek bu
CRLF dönüştürme şansı ayılar verileri bozma. =gerçek olacak autocrlf CRLF LF taahhüt sırasında ve dönüştürmek Ödeme sırasında CRLF LF. Bir dosya EĞER o ve CRLF karışımı içerir bu yeniden tamamlanamaz önce git ile. Metin için bu dosyaları doğru olanı yapmak: çizgi düzeltir sonlar sadece çizgi EĞER biz böyle depodaki sonlar. Ama ikili yanlışlıkla dosyaları metin dönüşüm olabilir gizli bozuk veri.
Büyük / küçük harf duyarlı dosya sistemleri
Farklı bir kasa ile aynı dosya adı depodaki zaman büyük / küçük harf duyarlı dosya sistemi,, git ama sadece biter dosya sistemi üzerinde kontrol etmeye çalışır. Git ikinci karşılaştırmak için çalıştığında, yanlış dosyaya karşılaştırın.
Çözümü olmayan büyük / küçük harf duyarlı bir dosya sistemine geçiş olacağını da, ancak bu çoğu zaman mümkün veya yeniden adlandırma değildir ve başka bir dosya sisteminde dosyaların bir yapılıyor.

Nasıl Gıt hazırlama alanından tek bir ...
Ne kadar düzenli bir dosya bash yoksa ...
Nasıl Gıt (chmod) dosya mod değişiklik...
Takibi bırak ve Git içinde bir dosya i...
Sunucu üzerinden indirmek için değil, ...