簡體   English   中英

SVN提交不執行任何操作

[英]SVN commit does nothing

我在Ubuntu 12.04上安裝了svn存儲庫,並且需要在Mac和Windows客戶端上都使用svn。 我遵循了本指南,以使用自定義svn://協議運行svn,並且可以成功檢出我的存儲庫。 簽出時,服務器不要求任何身份驗證?

在Mac客戶端上-命令行-我提交,應該說

$ svn commit -m "edit 3 svn test"
Sending        a
Transmitting file data .
Committed revision 3.

但這是實際發生的情況:

$ svn commit -m "added howto section."

沒有。 svn日志不指示任何更新。

如果我詢問svn的狀態,我會獲得復制到本地工作副本中且需要更新的所有目錄的完整列表,但這些目錄中沒有文件:

$ svn status
?       app/Plugin/Metrics/Test
?       app/Plugin/Metrics/Model
?       app/Plugin/Metrics/Console
?       app/Plugin/Metrics/Controller
?       app/Plugin/Metrics/Config
?       app/Plugin/Metrics/Lib
?       app/Plugin/Metrics/View

'?' 表示所有這些列出的目錄都不在版本控制中。 但是,未列出任何更改的文件。 為了清楚起見-上面列出的大多數目錄都包含我要添加或提交到倉庫中的新文件。 這些文件未列出,僅列出目錄。

如果我嘗試“ svn添加”這些目錄之一,我會得到

$ svn add app/Plugin/Metrics/Model
svn: warning: 'app/Plugin/Metrics/Model' is already under version control

如果我手動嘗試“ svn添加”我復制到本地工作副本中這些目錄之一中的文件,則會得到

svn add app/Plugin/Metrics/Controller/MetricsMetricsController.php 
svn: warning: 'app/Plugin/Metrics/Controller/MetricsMetricsController.php' is already under version control

如果我手動嘗試提交相同的文件,我得到

 svn ci app/Plugin/Metrics/Controller/MetricsMetricsController.php 

沒有。 svn在客戶端上沒有反饋。 我正在前台的ubuntu框上運行svnserve,以查看它是否為我提供任何調試信息,但也什么也沒顯示。

svnserve -d --foreground -r /galaxypool/svn

令人沮喪的問題。 有什么想法如何使SVN提交嗎?

我最終完成了以下操作:-將新目錄樹從本地工作副本移至桌面。 - 發行:

svn delete app/Plugin/Metrics
D         app/Plugin/Metrics

然后提交-這從存儲庫中刪除了損壞的Metrics文件夾:

svn commit -m "delete metrics"
Deleting       app/Plugin/Metrics

Committed revision 16.

然后,我進入目錄樹並刪除了所有隱藏的“ .svn”文件夾,然后將其復制回本地工作集中。 svn狀態說

svn status
?       wezwa
?       app/Plugin/Metrics

然后我再次使用svn add將樹添加回去:

svn add app/Plugin/Metrics/
A         app/Plugin/Metrics
A         app/Plugin/Metrics/Config
A         app/Plugin/Metrics/Config/bootstrap.php
A         app/Plugin/Metrics/Config/cache.php ...etc

並提交:

svn commit -m "upload metrics"
Adding         app/Plugin/Metrics
Adding         app/Plugin/Metrics/Config
Adding         app/Plugin/Metrics/Config/Schema
...etc

從Windows系統進行了測試,並且可以正常工作。 文件在存儲庫中是安全的。

首先,您需要添加新文件以進行版本控制。 例如:

svn add app/Plugin/Metrics/Test

之后,提交結果會將這些文件置於版本控制下。

但是,在使用另一個客戶端之前,您需要在那里更新工作副本。

svn update

這將為您提供存儲庫的實際狀態。 如果文件已經在本地存在,您將有沖突。 您將必須以某種方式解決這些沖突。

編輯 :似乎由於手動移動.svn目錄而導致工作副本損壞。 再試一次。 首先從存儲庫的全新干凈工作副本開始。 對要包括在新工作副本中的目錄進行導出(而不是檢出),然后將其復制過來。

請記住,這不是最好的選擇。 您可以使用外部關聯到另一個存儲庫,或者如果您需要在其中進行某些更改,請使用“供應商分支”(如此處所述: http//svnbook.red-bean.com/en/1.7/svn.advanced.vendorbr)。 html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM