我想檢查使用git-svn的Boost庫,並且我只想檢出從版本1.35開始的中繼和標籤,即標籤/ release/Boost_1_35及更高版本。我的配置是這樣的:如何git svn只獲取具有特定模式的分支/標籤?
[svn-remote "svn"]
ignore-paths = ^tags/release/(?i:(?!boost)|[^/]*(?:beta|rc)|boost_(?:0|1_[1-2]|1_3[0-4]))[^/]*/
url = https://svn.boost.org/svn/boost
fetch = trunk:refs/remotes/svn/trunk
tags = tags/release/*:refs/remotes/svn/tags/*
然而,git的取指仍取萬噸無關標籤例如svn /標籤/ version_0-9-10或svn /標籤/ version_0-9-10 @ 44215的。我想知道指定忽略路徑來實現這種效果的正確方法是什麼。
順便說一句:我讀過How do I fetch/clone only a few branches using git-svn?,但聽起來不是一個可擴展的解決方案。
[我對相關問題的回答](http://stackoverflow.com/questions/6933748/how-do-git-svn-ignore-paths-work-ignoring-daily-build-tags/6937445#6937445)可能也適用於你。 – MatrixFrog
@MatrixFrog謝謝。我認爲它與我所提到的非常相似,因爲boost是一個非常大的存儲庫,所以它不具有可擴展性。我還擔心新分支出現時,會再次通過所有svn歷史?如果是的話,那麼它不適用於增強庫,因爲它通常需要幾天時間才能使用git檢出完整的boost庫。 –
是的,這是一個很好的觀點。如果有大量標籤,您可能希望將其保留一晚,可能不止一次。或者,有人可能已經完成了工作並將其發佈到某個地方,因此您可以克隆他們的git repo。事實上,谷歌「助推混帳」 - 看起來發生了。 – MatrixFrog