2012-07-10 38 views
1

有人點我到一個配方通過遞歸添加的所有文件,除了那些在.svn目錄從Subversion版本結賬 創建水銀回購配方? 我想它看起來像hg add --exclude PATTERN對於像.svn一些模式。一種用於把一個顛覆結帳善變的版本控制下

Subversion checkout除了.svn目錄中的文件還有什麼「特殊」文件嗎? 如果是這樣,我需要配方來排除這些。謝謝。

回答

3

最簡單的方法是做一個Subversion導出而不是結帳,然後你只需要得到你想要的目錄結構,沒有.svn文件夾。

如果你必須使用一個結賬,然後添加到水銀前添加這叫做.hgignore在根目錄中的文件:

syntax: glob 
.svn 

該文件識別的文件和目錄,水銀不應試圖把下版本控制,在這種情況下,所有的.svn目錄。

+0

我仍然希望保持svn checkout最新。如果我想更新它,我假設這不會保留結帳信息。另外,我沒有看到'1.6.12'。 – 2012-07-10 19:58:05

+0

我的不好 - 讓命令感到困惑,它是導出的,我已經編輯了相應的答案。正確 - 這會給你一個快照。還增加了答案... – 2012-07-10 20:01:17

+0

看起來不錯。你可以更明確一點,並且說'hg add'忽略(即不添加)所有由'.hgignore'匹配的文件。 – 2012-07-10 20:04:47

1

如果您想在本地使用mercurial,但要與遠程SVN存儲庫進行交互,可以使用hgsvnhgsubversion擴展來在兩者之間推/拉變更集。

+0

謝謝,但不,我沒有試圖這樣做。 – 2012-07-10 20:05:14

0

聽起來好像你正試圖將Subversion版本庫導出到Mercurial。試試Mercurial的convert extension。它隨Mercurial一起發貨。我們已經使用它來在Mercurial存儲庫之間進行轉換。它會接收最後一次轉換結束的地方。也就是說,當您針對已經轉換的存儲庫重新運行它時,它只會轉換尚未轉換的提交。

+0

不,我只是試圖將svn簽出轉換爲mercurial,而不是存儲庫本身。 – 2012-07-11 05:51:50

+0

你應該仍然嘗試轉換擴展名。我相信它有轉換個別修訂/提交的選項。 – 2012-07-11 08:24:11

+0

好的,謝謝。我會看一看。 – 2012-07-11 15:53:10