2011-08-15 67 views
2

我正在將一個大的SVN倉庫轉換爲多個git倉庫(每個項目都有一個倉庫)。svn2git與--exclude,任何方式來忽略空/空提交?

我與所有不需要的目錄,每個回購--exclude d這能很好地保持標籤和分支(我刪除所有無關的標籤轉換後&分支機構)運行svn2git

唯一的問題是我有負載空提交(涉及排除目錄的提交)。

有什麼辦法可以在svn2git進程中排除這些空提交嗎?

This solution是事後刪除它們的好方法,但filter-branch隻影響當前分支,而不是所有其他分支和標籤。

+1

您可以用'git的過濾分支... --all'到過濾所有分支和標籤 – knittl

+0

你是對的,我會試試看。不過,我很感興趣知道在這個過程中是否有辦法在svn2git中做到這一點。當你第一次做對時,一切都看起來更清晰,而不是事後重寫歷史。 –

回答

7

解決了它。

據我所知,此命令將重寫歷史記錄,刪除空白提交,但保留其他所有內容。

git filter-branch --tag-name-filter cat --prune-empty -- --all

您可以使用此命令查詢提交的數目之前和快速測試後:

git log --pretty=format:'' | wc -l