Visual Studio'nun çözüm dosyalarını gözden geçirmesini “her zaman” nasıl durdurabilirim?


152

Görünüşe göre hiçbir sebepten dolayı, çözümümü her açtığımda, Visual Studio sln dosyasını denetler.

Önceki sürümle karşılaştırırsam hiçbir değişiklik olmaz. Ancak bu, herkesin çözümü kontrol ettiği için gerçekten sinir bozucu.

Her ikisi de SP2 olan VS 2008 ve TFS 2008 kullanıyorum.

Bu şeyin olmasını nasıl durdurabileceğim hakkında bir fikrin var mı? Yoksa VS için TFS kaynak kontrol sağlayıcısının bir özelliği / hatası mı?


çözümün bir parçası olarak bir birim test projeniz var mı?
Mitch Wheat

1
TFS, eşzamanlı ödünç alma işlemlerini destekler ve .sln dosyasında değişiklik yapılmadığı sürece çoklu ödeme bir sorun oluşturmaz.
Dirk Vollmar

5
* .Sln dosyaları gerçek değişikliklere sahip olduğunda, içindeki projelere keyfi ancak benzersiz olmayan kimlikler verildiği için birleştirilmeleri korkunç bir kabustur. Eşzamanlı kontroller için büyük bir savunucuyum, ancak * .sln dosyalarımızın çoğunu kilitli tutuyorum.
Richard Berg

3
BU VS2013'te SABİT !!! 2012'de aynı çözümü açtım ve 2013'te açık olan .sln'yi kontrol ediyor ve açık kalıyor.
felickz

2
Bunu zaman zaman Visual Studio 2010'dan ve en yeni sürüm olan Visual Studio 2015 Güncelleme 3'e kadar olan tüm sürümlerle gördüm. birçok proje ile.
Tore Østergaard

Yanıtlar:


121

Bu, aşağıdaki .sln dosyasında olduğunda gerçekleşir:

GlobalSection(ExtensibilityGlobals) = postSolution
    MyGlobalProperty = AnyValue
EndGlobalSection

Enterprise Library'nin bunlardan birini eklediğini gördüm. Söktüm, çözeltiyi kontrol ettim, kapattım ve tekrar açtım ve artık otomatik kontrol yok.


21
Görünüşe göre Unity NuGet paketi VS 2010'daki çözüm dosyama bunu yapmış olabilir. Bu bölümü kaldırdım ve otomatik ödeme sorunum çözüldü. Teşekkürler Graham!
Dan Mork

14
En sevdiğim teknolojilerden ikisi - TFS ve EntLib - ne bir çift sevgilim.

1
Böyle bir bölüm var ama tutmak istiyorum veri içerdiğinden kaldırmak istemiyorum - şimdi ne olacak? MS bu sorunu "tekrarlanabilir değil" olarak kapattı - aptal mı? connect.microsoft.com/VisualStudio/feedback/details/573538/…
mattanja

Dan'ın yorumu gerekli bilgileri ekler - tüm global bölümleri kaldırmak gerekmez - sadece birlik nuget paketi tarafından eklenen gibi görünen kısım.
Ürdün0Gün

2012'de hala aynı
BlackICE

6

Bellekten, Araçlar, Seçenekler menüsünü kullanır ve Kaynak Denetimi, Ortamlar panelini seçerseniz , IDE'nin sürüm denetimi ile arabirim biçimini yapılandırmak için birkaç seçenek olmalıdır.

Bence bu seçeneklerden bazıları açık davranışların kontrolünü kontrol ediyor .


1
evet ... otomatik olarak ödeme yapmanıza, ödeme yapmadan hemen istemenize veya hiçbir şey yapmanıza izin vermezler ... ama bu soruna yardımcı olan hiçbir şey yok
CodeClimber

sizden istendiğinde "hayır, kontrol etme" diyemez misiniz?
Scott Marlowe

Keşke takımdaki tek geliştirici olsaydım ... ne yazık ki tüm geliştiricilerin gayretli olmasına
güvenemiyorum

CodeClimber, VS'yi her başlattığınızda otomatik bir çıkış yapar ve otomatik kontrol işlemini durdurmak ve kapatmak istediğinizde sorunu çözmez. Nedir?
veight

1
Seçenekler listesinde "Ortamları" olmayanlar için, bağlantınızı "Yerel" yerine "Sunucu" olarak değiştirin (kaynak: stackoverflow.com/questions/26843300/… )
VenerableAgents

5

Tıpkı benim gibi, işe yaramazsanız ve bir veya daha fazla projenin de kontrol edildiğini fark ederseniz, daha basit bir çözüm buldum. Kontrol ettiği projeleri / projeleri not edin. Dosya - Kaynak Denetimi - Kaynak Denetimini Değiştir'e gidin ve söz konusu projelerin bağlantısını kesin. Tamam, Tümünü Kaydet'e tıklayın, ardından Kaynak Kontrolünü Değiştir'e geri dönün ve projeyi tekrar çözüme bağlayın. Umarım bu diğerleri için işe yarar



3

Çıkışa izin verin ve ardından her iki dosyayı karşılaştırın. VS gibi bir şey eklediyse

<Service Include="{B4F97281-0DBD-4835-9ED8-7DFB966E87FF}" />

VS2008'de bir çözümle bir VS hatası yaşıyorsunuz, ancak VS2005'e taşınmadınız

Daha fazla ayrıntı için bu bağlantıyı kontrol edin :



2

Visual Studio Solution dosyası, Microsoft Enterprise Library kullanarak bir veya daha fazla Çözüm Projeleri aracılığıyla sessizce teslim ediliyor - Bunun çeşitli Uygulama Bloklarının yapılandırma yönetimine izin veren Enterprise Library Yapılandırma Yardımcı Programı ile ilgili bir şey olduğuna inanıyorum - http : //msdn.microsoft.com/en-us/library/ff649479.aspx

Bu Microsoft Geri Bildirim gönderisine bakın: http://connect.microsoft.com/VisualStudio/feedback/details/737184/globalsection-extensibilityglobals-postsolution-checks-out-sln-file-on-open


bağlantı için teşekkürler Nigel, tüm takım bu sorunu yaşıyor
Baldy

1

Bu, çözümün içine yüklenen proje sistemlerinden birinin bir özelliğidir. Kaybolana kadar çeşitli proje türlerini (C #, VB, C ++, web sitesi, web uygulaması, birim testi, silverlight ...) kaldırmayı deneyin; Bu senin cevabın.


0

Karşılaştırma yapmadan önce dosyalarınızı kaydediyor musunuz? Bir süre önce benimle oldu ve dosyalar arasında herhangi bir değişiklik olmadığını söylemeye devam ettim, ancak bir süre sonra dosyaları daha önce kaydetmediğimi ve bellekteki sürümle değil diskteki sürümle karşılaştırıldığını fark ettim.

Visual Studio'da her çözümü açtığınızda, .sln veya proje dosyalarınızın değişmesine neden olabilecek bazı işlemler gerçekleştirir ve daha sonra dosyayı kontrol etmenizi ister. Geliştiriciler makinesindeki klasör yapısında değişiklikler olduğunda veya tüm dosyaların aynı sürümlerine sahip olmadığında olur. Belki birisi bir klasöre bir proje ekledi ve başka bir geliştirici aynı projeyi başka bir yerde buldu. Bunun gerçekleştiğini gördüğüm başka bir durum, bazı c ++ projeleriyle bir çözümümüz olduğunda, bazı nedenlerden ötürü, bu c ++ projelerinden birinin mutlak yolları olan bir .res dosyası vardı. Bu dosya VS tarafından otomatik olarak oluşturulduktan sonra geliştirici makinesinden geliştirici makinesine geçiş yapmaya devam etti.

.Sln dosyanızı açmanızı ve bazı geliştirici makinelerinde bulunamayan bazı mutlak yolları veya göreceli yolları aramanızı öneririm.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.