的git - svn的-助手是命令行工具,極大地簡化了使用Git的SVN倉庫的集合。
混帳 - svn的-傭工的主要目標是使建立一個本地的Git倉庫下面的現有SVN結帳“沒有腦子”。
它還涉及使用單個混帳SVN倉庫的工作(通常)不同的分支多次簽,並在它們之間進行切換。
基本用法(例)
執行摘要:
>光盤路徑/到/ SVN /回購
> gitify
下面是一個示例會話:
> CD / tmp目錄
> SVN合作https://svn.plone.org/svn/plone/plone.app.form/branches/1.1 plone.app.form
1.1 / setup.py
...
檢出版本27228。
>光盤plone.app.form
> gitify
沒有Git倉庫中/Users/tomster/.gitcache/找到。
開始克隆到緩存中。
分析SVN日誌...
克隆https://svn.plone.org/svn/plone/plone.app.form/從r10593:27155到/Users/tomster/.gitcache/
在/Users/tomster/.gitcache/plone.app.form/.git/初始化空Git倉庫
...
Git的分支“本地/ 1.1”現在下面的svn分支“1.1”:
#在當地的分公司/ 1.1
沒有提交(工作目錄清潔)
> git的分支
*本地/ 1.1
 主
注意事項:
  * gitify限制克隆在包根的SVN日誌(這裡https://svn.plone.org/svn/plone/plone.app.form/)找到了修訂。一個大的節省時間,尤其是在大型倉庫(如plone.collective)
  * gitify創建的Git倉庫在〜/ .gitcache不到位
  * gitify創建本地分行的本地/ 1.1以下的(遠程)SVN分支1.1和切換到它
多退房
在實際應用中,你經常會用給定的資料庫中不同的本地副本,即主幹和一個特性分支工作。這時候,在上面創建的.gitcache目錄就派上用場了。讓我們把我們以前的結算出的方式,並創建一個維護結賬下面幹線:
> CD ..
> MKDIR功能分支
> MV plone.app.form功能分支/
> MKDIR維護
>光盤維修/
> SVN合作https://svn.plone.org/svn/plone/plone.app.form/trunk plone.app.form
一個plone.app.form / setup.py
...
 üplone.app.form
檢出版本27228。
如果我們運行gitify這裡會發生什麼?:
>光盤plone.app.form /
> gitify
Git的分支“本地/樹幹”現在下面的svn分支'樹幹':
#在當地的分公司/後備箱
沒有提交(工作目錄清潔)
請注意,此操作去得更快,因為我們現在已經使用了現有的Git倉庫中的緩存目錄。這可以進一步證明了看,現在可用的本地分支:
> git的分支
 地方/ 1.1
*本地/後備箱
 主
注意事項
'循環'git的以這種方式工作(也許令人驚訝)以及在實踐中,但是你需要記住以下幾點:
所有檢出共享相同的指數!
讓我們來看看這是什麼意思切換回我們的特性分支:
>光盤../../feature-branch/plone.app.form/
> git的狀態
#在當地的分公司/後備箱
#更改,但沒有更新:
#(使用“git的添加/ RM ...”更新什麼承諾)
#(使用“混帳結帳 - ...”放棄改變工作目錄)
#
#修改:文檔/ HISTORY.txt
...
#刪除:Plone的/應用/表格/ KSS /測試/ test_kss.py
...
#
#未跟踪文件:
#(使用“混帳添加...”在什麼將致力於包括)
#
#Plone的/應用/表格/測試/ test_kss.py
Wohah!發生了什麼事是git的現在指向中繼,因此,status命令表明,我們的分行作為本地修改之間的區別,因為這是文件系統代表。我們可以通過使用顛覆status命令驗證這一點:
> SVN ST
唷!一切為了!但是做什麼用的git?我們已經完成了在主幹上,並希望回到我們的特性分支,但混帳指數都錯了?簡單:只需重新運行gitify:
> gitify
Git的分支“本地/ 1.1”現在下面的svn分支“1.1”:
#在當地的分公司/ 1.1
沒有提交(工作目錄清潔)
基本上,這就是你需要與多個退房同一個包的工作時,要記住:始終退房之間切換時運行gitify
什麼是此版本中的新
- 在該cannonical庫現在https://github.com/collective。 [rossp]
- 在切換到SVN分支的git已經有一個地方分支時修復處理。 [rossp]
什麼在0.8版本的新:
- 請init命令跟著如果svn庫已切換到另一分支。由於卡爾文Hendryx - 帕克報告的問題。 [tomster]
什麼版本0.7是新的:
- 使用完整副本,而不是符號鏈接創建工作副本。這避免與同一庫的多個副本工作,大大降低了衝突的風險時,具有Git和SVN倉庫不同步的問題。
- 這也意味著,該取指令現在只能運行在高速緩存,而無需修改工作拷貝(使它安全通過crontab來運行,例如)
- 在對舊式的工作副本運行gitify會產生一個錯誤。簡單地刪除符號鏈接,並重新運行gitify補救措施,但是。
- 在另一個影響,是init命令現在只需要一次,每個工作拷貝(不再需要在同一倉庫的不同工作副本之間切換後重新運行該命令)。
- 在gitify因此不再默認使用init命令(就像既不混帳SVN也不做任何的W / O提供了明確的操作)。此外,它已更名為來自gitify(回)來初始化。 [tomster]
- 在允許的幫助下,--version並獲取命令運行之外.svn目錄[tomster]
什麼版本0.5是新的:
- 在添加gitify update命令,它執行的git - svn的底墊操作當前SVN結帳也gracelully處理未提交的本地更改(不同於混帳SVN但像SVN那樣)
- 不再使用的用戶反饋記錄模塊。這種想法是相當錯誤的
什麼在0.4版本的新:
- 在重構只使用gitify的入口點。所有其他的命令現在gitify的子命令:
- 在GS-提交已被替換gitify推
- 在GS取已被替換gitify取
- 在增加使用和幫助輸出的每個命令。
- 刪除,因為它是唯一曾經一起使用,主要gitify命令反正GS-克隆入口點。
- 使用的只是打印到標準輸出 正確的記錄,而不是
- 補充全面的測試,包括功能測試,涵蓋了整個更新/提交克隆的svn庫和commiting回到它的循環。
什麼是0.3.1版本,新的:
- 在修正:不要使用自定義的別名,如他們可能無法安裝。這解決http://github.com/tomster/git-svn-helpers/issues#issue/2
- 修正:明確列出的ElementTree作為依賴此解決http://github.com/tomster/git-svn-helpers/issues#issue/1)
什麼是版本0.3 Beta版新:
- 在添加了GS-commit命令這有助於提交回SVN,保持混帳和SVN同步
什麼是版本0.2 Beta版新:
- 在添加了GS-fetch命令,這有助於保持高速緩存達最新
要求:
- 在Python中
評論沒有發現