2011-03-30 106 views
2

我見過很多關於如何使用svn delete與--keep-local標誌在本地保留文件同時在存儲庫中刪除文件的絕佳答案。不幸的是,我無法找到任何關於當文件從svn中刪除時是否將從同事機器中刪除的信息。將svn刪除--keep-local還會保持文件在更新時不被刪除?

我們有一個項目,eclipse .project和一些.settings文件已被提交。我們不希望這樣,所以我試圖刪除它們。如果我在.project文件上執行了svn delete --keep-local,那麼我確定它會保留在我的系統上,但它會將它清除到我的同事的系統上,從而消滅他們的eclipse項目?

另外,有沒有辦法讓我svn:忽略版本化的文件,而不必首先從源代碼管理中刪除它?

回答

5

我的機器快速測試告訴我,該文件將從其他計算機中刪除。在這裏,我在目錄repo和兩個工作副本ab中創建一個存儲庫。然後我創建並提交一個文件a,更新b,刪除--keep-local文件b,最後更新aa中的文件被刪除。對於未翻譯的svn消息抱歉。

[email protected]:~/Escritorio/test$ mkdir repo 
[email protected]:~/Escritorio/test$ svnadmin create repo 
[email protected]:~/Escritorio/test$ mkdir a 
[email protected]:~/Escritorio/test$ mkdir b 
[email protected]:~/Escritorio/test$ svn co file:///`pwd`/repo a 
Revisión obtenida: 0 
[email protected]:~/Escritorio/test$ svn co file:///`pwd`/repo b 
Revisión obtenida: 0 
[email protected]:~/Escritorio/test$ cd a 
[email protected]:~/Escritorio/test/a$ ls 
[email protected]:~/Escritorio/test/a$ touch file 
[email protected]:~/Escritorio/test/a$ svn add file 
A   file 
[email protected]:~/Escritorio/test/a$ svn ci -m "Adding file" 
Añadiendo  file 
Transmitiendo contenido de archivos . 
Commit de la revisión 1. 
[email protected]:~/Escritorio/test/a$ cd .. 
[email protected]:~/Escritorio/test$ cd b 
[email protected]:~/Escritorio/test/b$ ls 
[email protected]:~/Escritorio/test/b$ svn up 
A file 
Actualizado a la revisión 1. 
[email protected]:~/Escritorio/test/b$ svn delete --keep-local file 
D   file 
[email protected]:~/Escritorio/test/b$ svn commit -m "Deleting file" 
Eliminando  file 
Commit de la revisión 2. 
[email protected]:~/Escritorio/test/b$ cd .. 
[email protected]:~/Escritorio/test$ cd a 
[email protected]:~/Escritorio/test/a$ ls 
file 
[email protected]:~/Escritorio/test/a$ svn update 
D file 
Actualizado a la revisión 2. 
[email protected]:~/Escritorio/test/a$ ls 
[email protected]:~/Escritorio/test/a$ 
+0

感謝您的測試。我當時沒有一個好的系統來測試它。 – digitaljoel 2011-03-30 18:29:53

1

你想做一個忽略,而不是文件擴展名。這將從存儲庫中刪除文件,但不會從您的PC或其他開發人員的PC中刪除。當其他開發人員添加和提交Visual Studio本地文件(.user等)時,我必須一直這樣做。

+1

我不認爲你可以忽略當前在源代碼控制下的文件,這就是爲什麼我要刪除,然後忽略。我錯了嗎? – digitaljoel 2011-03-30 18:28:57