2009-08-07 113 views
7

在我的方案中,我在服務器上維護svn-synchronized git存儲庫。 我所在組中的所有開發人員都使用此存儲庫來獲取其更新。
我無法找到一個方法來觸發自動「混帳SVN取」(或任何其它命令)之前開發商獲取的最新變化。
我目前的解決方法是有一個cron作業,每5分鐘在svn相關更改中進行同步。 有沒有可能有這種預取掛鉤呢?
謝謝git中的預取鉤子功能

回答

2

有沒有預先定義的掛鉤,可以讓你做到你想要的。

如果你的開發人員獲取了SSH,你也許能夠爲git-upload-pack其中隱藏的真正git-upload-pack和庫調用git svn fetch(雖然是絕對的把握壁球所有輸出和錯誤)execing現實之前創建一個包裝腳本git-upload-pack

這可能是相當繁瑣的設置,使健壯,雖然。您最好爲開發人員提供一種方法,讓他們在遠程存儲庫上手動調用git svn fetch,並鼓勵他們在進行真正的提取之前使用替代的提取別名,以便首先執行此操作(並等待它完成!)。

+0

感謝查爾斯, 我希望能有所不同,但無論如何,這並不存在的一個主要障礙。我們採用連續更新的策略看起來效果不錯,因爲這臺服務器僅用於更新,沒有人使用它來提交到svn服務器。 你是對的,你描述的場景聽起來不那麼友好,所以我認爲它現在好像很好。 – oliver 2009-08-24 12:49:11