我們目前有一個包含一堆數據(〜20Gb)的Subversion服務器。但是,每個人都使用git svn與該服務器交談。從git-svn遷移到純git
我們希望轉向使用純粹的git,但我們不想爲此設置一個服務器,只需在文件共享上安裝git存儲庫。
設置它的最佳方法是什麼?理想情況下,文件服務器上的版本應該是「裸露」的存儲庫,但理想情況下,也可以將svn更新拉一點,因爲在克隆時可能會完成一些提交。
[注:一切都是窗口]
我們目前有一個包含一堆數據(〜20Gb)的Subversion服務器。但是,每個人都使用git svn與該服務器交談。從git-svn遷移到純git
我們希望轉向使用純粹的git,但我們不想爲此設置一個服務器,只需在文件共享上安裝git存儲庫。
設置它的最佳方法是什麼?理想情況下,文件服務器上的版本應該是「裸露」的存儲庫,但理想情況下,也可以將svn更新拉一點,因爲在克隆時可能會完成一些提交。
[注:一切都是窗口]
如果你想擁有一個純粹的「裸」的Git與SVN倉庫同步服務器,你可以嘗試SubGit。
不僅每個SVN更新都會進入它,反之亦然:每次對Git存儲庫的推送都會被轉換爲SVN。
要設置這面鏡子來看
$ subgit configure --svn-url SVN_PROJECT_ROOT_URL --layout auto --trunk trunk repo.git
然後調整repo.git/subgit/config中根據自己的需要,然後運行
$ subgit install repo.git
後,如果您可以直接克隆repo.git:
$ git clone repo.git wt/
或設置對其的訪問例如與git-http-backend
一起使用,並與正常的Git存儲庫一起使用。
有關更多詳細信息,請參見Quick Howto。
聲明:我是SubGit開發人員之一。
嗯.....我猜你可以在服務器上設置一個回購站,你可以設置一個cronjob(或計劃任務,不管),它將運行git svn fetch來同步svn上顯示的內容然後移動一個「本地」分支到svn分支,以便人們可以「看到」它們。使用git的開發人員可以將此回購作爲遠程(例如:origin或「mainrepo」)添加,然後它就成爲了解您將如何設置回購以開始分享內容的問題(這本身就是一個整體主題)。
我沒有管理員權限到svn倉庫。這是否意味着我無法自動配置svn-> git更新? – xorsyst
它根本不需要管理員權限,它只是一個SVN客戶端。你需要的是在「subgit configure」步驟之後立即在subgit/passwd中設置密碼,或者將憑證緩存在Subversion主目錄中(通常情況下,如果SVN沒有要求輸入密碼,就已經存在)。 –