2011-11-25 47 views
0

我現在正在使用較新版本的SVN(1.7)時出現了一些令人擔憂的事情。Tortoise SVN 1.7複製文件問題

我有一個較舊的項目,我想將一些CI構建腳本複製到一個新項目中。我原來習慣於使用右鍵單擊拖放,然後點擊「導出所有版本化的項目」或任何它被調用來獲取沒有SVN歷史記錄的文件副本。

沒有找到該選項後,我做了一個快速谷歌發現:

http://groups.google.com/group/tortoisesvn/browse_thread/thread/66b30b120756e2ea/47023377b04ef1db?show_docid=47023377b04ef1db

現在我去只是複製和粘貼我的文件,而不是和它的一些原因,保留了最新的圖標在shell,我認爲它可能只是操作系統不更新文件夾,所以忽略它,當我去提交時,我檢查了日誌,以確保它不是以某種方式鏈接到舊項目,它說沒有版本信息。

無論如何,現在我確實提交了我在日誌中查看並查看所有對照前一個存儲庫的檢查,然後我的...因此,它具有我當前的日誌條目作爲新項目,以前的所有條目都具有舊的歷史記錄項目......這是一個錯誤還是在這裏出了問題?

我不知道爲什麼這無關庫將剛剛從複製的文件從其他無關的項目的任何信息......

+0

也許你可以使用確切的Subversion術語來解釋你的問題:工作拷貝,存儲庫,簽出,提交......現在,它對我來說沒有任何意義。 –

+0

你可以顯示存儲庫/存儲庫和文件的一部分?目前還不清楚是從哪個位置複製到哪個位置 – mliebelt

+0

我認爲上述內容相當簡潔,我已經退房了Old-Project,我想從中導出一些文件到另一個退房新項目(在不同的倉庫中)我曾經選擇t下襬所有,然後右鍵點擊拖放,然後選擇「在這裏導出版本化的項目」或者其他的東西,然後它會把文件放在那裏。然而,在閱讀發佈的鏈接後,它說你應該只是正常的shell拷貝,所以我做了,但是由於某種原因,當我提交New-Project時,它包含來自Old-Project的日誌條目,用於添加這些文件。 – Grofit

回答

0

行爲聽起來很有益的。擁有從舊項目複製的文件的修訂歷史記錄是有益的。 如果您不希望從舊項目中查看修訂歷史記錄,則可以在修訂日誌對話框中選中「停止複製/重命名」框。 當您使用資源管理器拖放文件時,我懷疑您還在舊的工作副本中複製了隱藏的.svn文件夾。如果您真的想擺脫修訂歷史,您可以使用repo瀏覽器進入存儲庫,選擇您的舊項目文件並導出到您的新項目工作副本文件夾。然後從您的新項目工作副本中將這些文件添加到您的新項目存儲庫中。

+0

看看它是如何變化可能是有用的,但因爲我沒有做任何事情,只是複製一個文件似乎很奇怪,但如果這是所需的行爲會給你答案! – Grofit

0

我想你是在討論在兩個不同的subversion項目之間複製文件。如果這是你想要的,在一個「working-copy」中籤出文件,然後遞歸刪除所有「.svn」文件夾。這會將「工作副本」「轉換」爲一堆文件(無需修訂歷史記錄或基本遠程存儲庫)。

由於文件現在只是一堆文件,因此您可以將它們複製到「新」存儲庫中並與svn add ...命令一起添加。當然,您也必須檢查它們。

當您嘗試執行文件的交叉存儲庫移動時,將目錄從「舊」工作副本移動到「新」工作副本將放置「.svn 「一個工作副本的文件夾放入另一個工作副本。由於這些文件夾包含目錄的subversion工作副本配置的位,因此您可以在一個工作副本中有效地混合配置。這往往有一些相當不良的影響。如果我是你,我只需要抓取「重要」文件的副本並刪除整個存儲庫。然後,我會使用新檢出的存儲庫第二次嘗試操作(並且注意不要複製「.svn」文件夾,或者拖放操作可幫助您自動複製它們)。

正常情況下複製「。SVN」文件夾需要工作副本(這是什麼使tortise可能的,很好用的部分);然而,顛覆的設計是不是這樣的,你可以將這些文件夾安全地複製工作副本之間