2011-09-23 109 views
2

有誰知道Polarion將Starteam(2006v2)遷移到SVN的替代方案嗎?僅我們的來源是10GB,不包括所有修訂歷史。每當我運行Polarion svnimporter時,我都會遇到「Java內存不足」異常。我不確定是什麼導致了所有的內存使用,但我不確定從這裏去哪裏。任何建議(讓我至少保留一些歷史)將不勝感激。Starteam到SVN遷移,Polarion的替代品?

謝謝!

+0

在這種情況下,您授予Java多少內存? –

+0

@ A.H。 1.5克是最後一次嘗試。我無法使用x64版本的java,因爲starteam只有32位 – Jordan

回答

2

大約十年前,我們做了一個StarTeam到ClearCase的遷移。我被僱傭寫一個程序來完成移植。不幸的是,StarTeam的命令行界面非常有限,沒有真正的API。幾乎所有StarTeam命令都必須由50個字符的登錄字符串預先修復。也許這在過去的十年中發生了變化。

您是否嘗試增加Java的內存分配?默認情況下,JVM將只使用64Mb的內存。許多Java應用程序需要更多方法。在Java命令中,你可以給它一些像-Xmx256m這樣的256M內存。我看到Polarion的軟件是基於Java的,但是我沒有下載它,因爲他們想要我的名字和電子郵件。 (這只是不值得麻煩。)但是,我認爲它有一個批處理腳本或shell腳本來執行程序。

是否有可能只做一個目錄/模塊或兩個一次?許多站點使用多個Subversion存儲庫 - 每個模塊一個 - 而不是所有模塊的一個主存儲庫。另外,如果你真的想要的話,你總是可以將所有的Subversion版本庫轉儲並加載到一個大的版本庫中。多一點手肘油脂,但如果它有效,你就可以保持你的整個歷史。

我們最終所做的只是將一些標記點轉換爲歷史記錄而不是所有內容。我們的理論是,如果您確實需要詳細歷史記錄,則可以返回到StarTeam存儲庫。

發生了什麼改變了我對這些事物的看法:事實是,由於它依賴於StarTeam中的方式,因此無論如何我們都無法構建大部分舊東西,因此即使我們保留了歷史記錄,我們做得太好了。而且,它也給了我們重組所有東西並拋棄過時的東西的機會 - 如果我們能夠真正保留歷史,我們可能不會做到這一點。

而且,最終沒有人錯過了歷史。 StarTeam存儲庫使用SQLServer來維護存儲庫數據庫。該數據庫在轉換後不久墜毀。直到近一年之後,我們才發現它。我只是試圖看看StarTeam是否還在工作,並發現了這個問題。

所以,看看是否增加Java進程的內存有幫助,或看看你是否可以做零碎的轉換。如果這沒有幫助,你可能想問自己,歷史是否真的需要結束,或者如果你只是做了幾個標記點和活躍分支的提示是好的。

如果有人真的需要歷史,可以回到舊的StarTeam系統。

我希望我能給你更多的幫助,但是我自己並沒有更多的運氣與StarTeam。


回覆

是對的StarTeam CLI那麼糟嗎?應該可以編寫一個簡單的腳本來列出修訂版本,然後從starteam中檢查出來,並在大循環或SVN中檢查,不是嗎?

你會這樣想的。畢竟,我已經設法爲ClearCase,CVS,Subversion編寫我自己的轉換例程。然而,當我十年前這樣做時,StarTeam CLI太糟糕了,文檔很糟糕,Borland(它擁有StarTeam)根本沒有任何幫助。

有沒有登錄爲命令行工具。每個命令都必須提供憑證,這意味着在每個命令中放入大約50個字符的字符串。這也意味着CLI不知道你在看什麼。您不能像命令那樣執行svn info。你只是有一堆東西簽出。

無法通過命令行瀏覽詳細的歷史記錄。例如,沒有辦法找出所有的修訂版本,並且像使用Subversion甚至CVS一樣檢查它們。

有一個C API,但它也相當有限。我看到現在有一​​個Java API可能是Polarion正在使用的。

我在想也許有一個StarTeam到CVS包可能會有所幫助。轉換爲CVS後,您可以將其轉換爲Subversion。唉,除了在互聯網世界的暗淡中問幾個人問同樣的問題外,我什麼也沒有發現這個問題。

我嘗試下載API信息或命令行文檔,看看我能否算出任何東西,但網站已關閉。

對不起,我不能幫你說我試過了,失敗了

+0

我已經把內存提升到了1.5g,但沒有成功。嘗試一塊一塊是一個有趣的想法,但我並不抱有任何希望。 StarTeam CLI不好嗎?應該可以編寫一個簡單的腳本來列出修訂版本,然後從starteam中檢查出來,並在大循環或SVN中檢查,不是嗎?有沒有人以前做過?不幸的是,我不應該花太多時間來編寫一個腳本來做到這一點,所以如果有一個可以調整的不是Polarion,那麼它會非常有幫助。如果可能的話,我真的很想保持歷史。 – Jordan

+0

看到我上面的答案。 –

+0

感謝您嘗試隊友,似乎每個人都得不到這個:( – Jordan

0

我不知道starteam,但通常可以從Source Versioning系統導出標籤/標籤列表(或者所有標籤?)。然後使用svn_load_dirs.pl將它們「堆疊」在彼此之上。

這意味着你不會有整個歷史,但至少大部分凍結的項目狀態。

您可能也可能不會導出某些帶時間戳的版本,並嘗試堆疊它們。

我最近通過檢查簽入/提交歷史記錄來遷移一些簡單的清晰VOB,併爲每個簽入項目導出並使用svn_load_dirs.pl將它們導入新的svn存儲庫。

+0

顯然,starteam的命令行界面非常有限。不幸的是,我也不太瞭解StarTeam,因爲我剛開始使用StarTeam。 – Jordan

4

我正在將中型項目StarTeam遷移到Subversion。由於虛擬機內存不足,我也必須處理很多JVM崩潰。似乎他們從StarTeam使用的Polarion庫/工具或StarTeam.jar文件存在大量內存泄漏。在任何情況下,我似乎做以下已經得到過去,(手指交叉):

java -Xmx2048m -cp svnimporter.jar:starteam80.jar org.polarion.svnimporter.main.Main full config.properties 

現在,它已經對約11萬個文件運行約3天..而只是完成了一半..所以這是一個很慢的過程,至少可以說。

我發現沒有其他工具在那裏....所以祝你好運。

+1

感謝您列出組織路徑,這是我失蹤的祕密醬。 –

0

https://netcodeman.blogspot.com/2011/01/converting-from-starteam-to-subversion.html?showComment=1506429228614#c7145074297097582572

https://stackoverflow.com/users/618865/quinn-bailey < =這傢伙之前完成轉換,並寫了一些修正。可能會有幫助。

https://www.openmakesoftware.com/svn-importer-converting-from-borland-starteam/

具有沿着這些路線的一些有趣的評論。我也知道SVN Importer對於引入多個標籤的版本有問題。我聽說有一個版本的SVN導入器可以解決這個問題,但似乎無法找到它。