2011-05-05 46 views
2

我從http://svnhost/project/tags/0.3檢出了一些東西。我已在該目錄中進行了修改,現在我想將它們提交到主幹。我如何切換提交目標?看來svn switch會嘗試檢出中繼線,如果我使用它,但我不想那樣做,因爲它會覆蓋我的更改。如何簽出標籤,進行一些更改,然後提交幹道和重新簽名?

+0

關閉我的頭頂上...檢查後備箱,從當地分支機構的本地檢出合併到本地後備箱中,然後將其重新檢入... – forsvarir 2011-05-05 15:14:13

+0

您應該在啓動前從您的標記中製作一個新分支修改。標籤應該是隻讀的。 – Albireo 2011-05-05 15:20:07

+0

@Albireo:這是一個很小的修改,我在一次提交中完成。我沒有修改原始標籤。 – ryeguy 2011-05-05 15:25:42

回答

5

SVN切換命令的使用可能有點棘手,而且比手動將更改手動合併到主幹中更簡單。我同意Forsvarir最簡單的解決方案是檢查中繼線,將標記文件移入中繼線,然後提交中繼線。

但是,在使用switch命令時,這可能會對documentation有所幫助。通常,一個好的做法不是專門在標籤上工作:

這可能是因爲您需要對已標記的版本進行進一步更改。處理這個問題的正確方法是首先從標籤創建一個新分支並提交分支。在這個分支上進行更改,然後從這個新分支創建一個新標籤,例如Version_1.0.1。

創建分支後,您可以執行merge command

0

subversion中的標籤實際上是在某個位置的目錄。因此,要簽出標籤,請使用引用該目錄的URL進行簽出。

要提交該標記,請執行正常提交。

要將這些文件複製到新的「正確」標記目錄中,您可能必須在svn複製之前mkdir ...; svn add (dir)