2011-06-24 41 views
1

有沒有辦法可以從svn中刪除具有特定文件類型的所有文件?如何從svn中刪除所有「特定文件類型」文件?

我想這樣做,因爲我的全局忽略列表不工作,我已經將* .dll文件類型添加到全局忽略模式,但它仍然在提交對話框中,並且我已經在某處讀到「文件已經存在如果在已經提交文件之後添加了忽略模式,則承諾svn保持進入提交對話框。

回答

1

不幸的是,SVN不支持從修訂歷史中永久刪除文件。 http://subversion.apache.org/faq.html#removal

您可以嘗試添加您之前提交併希望忽略的特定dll文件的完整路徑。還要確保它在頭上被刪除。

+1

我不想永久刪除。我只想爲所有具有特定擴展名的文件發出正常的刪除命令。 – teenup

+0

我會嘗試製作這些文件的副本,在磁盤上將其刪除並提交。然後,我會在正確設置忽略列表後將文件恢復。 –

+0

+1對於解決方案...是的,這是好的..但我會離開這個問題打開..爲更好的答案。謝謝。 – teenup

2

選擇.dll文件,右鍵單擊 - > TortoiseSVN - >刪除並添加到忽略列表 - >忽略擴展名。

這樣做後提交刪除。這將確保dll文件未版本化(從回購中刪除,但本地副本保留)並添加到忽略列表中。

2

[@manojlds給出了一個正確和簡潔的答案:單一的TortoiseSVN命令節省了一個費力的多步操作!我只打算在他的回答發表評論,但我需要多一點的房間]

幾個其他有用的觀點:

  1. 如果你有一個大的樹和大量的文件來處理你做不得不重複刪除和-忽略每個目錄:使用搜索功能在Windows資源管理器列出一個窗口感興趣的所有文件(在你的情況下,所有的dll文件中的所有子目錄)。然後選擇搜索結果中的所有文件(control-A)並按manojlds描述的方式繼續進行擴展忽略。

  2. @manojlds然後指示「提交刪除」。從技術上講,你需要承諾均爲標記爲刪除的文件包含目錄:ignore步驟實際更新父目錄的忽略列表。如果您使用了大量搜索/刪除和忽略,如步驟1中所述,忽略步驟會更新您處理的每個文件的父目錄,因此所有這些目錄也需要提交到存儲庫。

相關問題