2011-08-18 65 views
2

我將在沒有網絡訪問的情況下旅行(即無法訪問我們數據中心中的Subversion服務器)。我已將最新版本的Subversion存儲庫簽出到我的筆記本電腦中,而我將在我不在辦公室時處理該項目。我想:旅行在筆記本電腦上離線Subversion版本庫,然後在返回時與SVN服務器同步

  1. 有一個顛覆服務器來檢查事情進入,做回覆,有歷史等,而我旅行時。顯然,這需要安裝在筆記本電腦上。如有必要,我可以獲得svn回購的備份。

  2. 一旦我再次訪問,請檢查所有更改(希望歷史記錄也一樣)。

我很高興能在筆記本電腦,但使用任何技術(SVN,GIT中,汞),終止全是,所有服務器是顛覆。

我讀過其他一些(舊的)職位,包括低於,但如果個人的歷史/所有提交/版本可以被添加到服務器在數據中心並不清楚:

source control when away from office

Subversion Proxy for working offline?

http://www.aidanf.net/archive/blog/2007/12/10/using-git-offline-commits-subversion-repository

回答

3

我會去GIT-SVN。您可以從遠程SVN存儲庫同步代碼,在本地在一個或多個分支中處理它們,在分支之間進行本地合併,並且當您有連接時,您可以將選定的提交(以您想要的塊形式)推送到SVN存儲庫。

缺點是你必須學習git,你必須選擇要重新同步的內容,同步不是自動的。另一方面,你擁有當地的靈活性和力量,你不能單靠svn。

+0

+1,這不僅是OP所要求的,而且是爲更好的VCS提供良好的路徑;) – merryprankster

+1

我不明白學習git是如何造成負面影響的。 –

0

我不認爲你想達到什麼是可能的,因爲如果很多人擁有版本庫的本地副本,每個副本都會根據自己的修改進化。補丁/提交歷史將有所不同。歷史不一定是可以調和的,就像補丁有時會發生衝突一樣。

我從來沒有聽說過一種允許在Subversion存儲庫實例之間進行這種協調的工具。當然,您可以通過修補程序保留每個更改的副本,並在再次聯機時應用它們。但這是單調乏味,無聊而痛苦的。

我對這些離線情況的解決方法是從服務器創建10個簽出並針對每個問題(或問題集)解決問題。然後,當我重新聯機並使用更新功能「同步」它們時,我會逐一檢查它們。這並不完美,但我覺得這是一個很好的解決方法。

希望這會有所幫助。

0

在筆記本電腦上安裝本地svn服務器,並將源代碼保存在那裏。它不會產生沉重的工作量。當您不在辦公室時,將您的更改提交到本地服務器。當您變爲在線時,獲取本地存儲庫的轉儲並將其加載到您的服務器。然後,您可以將您的更改合併到主線。

p.s.它不太方便,但在服務器無法訪問時保留您的更改。

相關問題