簡體   English   中英

忽略待處理更改中的某個文件

[英]Ignore certain file from pending changes

這是我的問題。 我有一些來自解決方案的文件(假設是Web.config),我已經更改了,並且永遠不想辦理登機手續,因為更改僅指我的機器。 有沒有辦法在TFS中說明忽略某個文件中的更改並將其從掛起的更改窗口中刪除。 當然,我可以在每次辦理登機手續時跳過這個文件,但總是會有一個錯誤遺忘和登記的變化。 例如,AnkhSVN中有一個類似的忽略列表。

{app,web}.config文件的某些部分可以委派給另一個文件。 值得注意的是<connectionStrings>

app.configweb.config

<connectionStrings configSource="LocalConnectionStrings.config" />

LocalConnectionStrings.config有( <connectionStrings>是根元素):

<connectionStrings>
    <!-- For the application's operations. -->
    <add name="Application"
         connectionString="Data Source=server;Initial Catalog=database;Integrated Security=True;Network Library=dbmssocn"
         providerName="System.Data.SqlClient" />
</connectionStrings>

因此,每個開發人員都有一個LocalConnectionStrings.config ,它位於項目中,但在{web,app}.config具有共享設置的情況下,不在源控件集中使用其私有設置。 不幸的是,這僅適用於一組有限的系統定義的配置元素。

一種解決方法是刪除Windows資源管理器中web.config上的readonly屬性,然后在記事本中編輯它:

  • 它不會出現在掛起的更改中
  • 它仍然在源代碼控制中

丑陋但簡單的解決方案。

關於配置文件,TFS和不同開發者機器的最佳實踐是(下擺)......

您的所有開發人員都應具有相同的開發環境。 這是在TFS中管理web.config文件的唯一方法,它有很多額外的好處:

  • Nomore“但它可以在我的電腦上工作”

  • 它的朋友可怕的“我不明白需要什么依賴。它不再編譯了。”

  • 你不會后悔着名的“啊!我忘了告訴你,我發明了一個MyWonderfullApplicationConfigSection,你應該在你的web.config中定義它,但我不會告訴你怎么做。”

  • 它真的有助於設置構建環境或部署。

好吧,這不是很容易,我知道不同的開發人員喜歡不同的設置...但是標准化開發平台是個好主意。 這真的很值得。

對於我們在VS 2005/2008中的工作,我們打開了多個checkout,我們從不檢查web.config。

為了試圖做一些時髦的東西沒有辦法檢查的麻煩,我們只是從來沒有檢查過。在奇怪的情況下,其中一個文件被簽入,這是一個快速的“嘿家伙我搞砸了”。

另一方面,您可以告訴TFS從源代碼管理中排除文件。 這將需要存在於所有計算機上,因為解決方案/項目仍將查找該文件。

http://arcware.net/2007/04/12/how-to-exclude-files-from-tfs-source-control/

您還可以修改.SLN /項目文件。 我已經用測試項目完成了這個方法,我不想修復其他人的測試只是為了自己運行,所以我從TFS中刪除了我的測試項目,同時保持其他人完好無損。

您可以復制您不想簽入的文件,撤消簽出,並將其替換為副本。 由於更改是從外部VS進行的,因此不會檢出,因此它不會出現在Pending Changes列表中。

(我知道這是一個老問題,但我確信有人在尋找一種方法可以使用這個答案)

沒有什么可以忽略的,但最好的辦法是,在簽入之后,您可以使用基於Web的登錄或未映射源代碼樹的其他機器,並且可以從源代碼樹和visual studio中刪除不需要的文件。下次修改時不會簽入這些文件。

您還可以將文件放在文件夾中並在xml編輯器中修改項目文件以將您的文件包含在項目中,Visual Studio不會將文件添加到通過編輯項目文件的xml手動添加的源代碼控件中。

您使用的是哪個版本的工作室?

如果您在2010年,那么您可以使用Web配置轉換。 這樣,您可以根據環境使用不同的web.config文件。 例如,開發,測試,生產..

如果您在2008年,我們通常會有一個指向我們開發內容的主web.config文件和一個指向生產的web.production.config文件。 在部署期間,我們刪除web.config並重命名web.production.config。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM