需要夜間分發構建每天早上人70+,想用混帳進行負載平衡的轉移,並想知道如果在開始設計系統之前存在提示,陷阱或缺陷。
龍版每天早晨,我們需要將我們每晚構建分發到的70+人工作室(藝術家,測試人員,程序員,生產等)
。到目前爲止,我們已經將該版本複製到服務器,並且已經編寫了一個同步程序來獲取它(使用下面的Robocopy);即使設置了鏡像,傳輸速度也會慢得令人無法接受,因爲它需要長達一小時或更長時間才能在高峯時間進行同步(非高峯時間大約爲15分鐘),這意味着硬件I/O瓶頸。
我擁有的一個絕妙的(雖然絕對不是原創的)想法是在整個工作室分配負載。在調查使用臭名昭着的bit-torrent協議編寫客戶端之後,我想到另一個想法是,我可以按照設計使用git,這將使我們可以分發構建和修訂管理,並減少服務器的額外好處。
問題
你如何使用Git開始?我有中央位置的源控制系統的經驗,如Perforce和SVN。閱讀文檔,看起來您只需運行
git init path\\to\folder
,然後在另一臺機器上運行git clone url
?從哪裏得到
url
用於上述git clone
命令?我可以定義嗎?我發現有一個奇怪的概念,因爲git沒有中央服務器 - 或者它?例如類似於一個洪流跟蹤器?什麼是更好的選項來識別構建,使用變更列表號碼或標籤?
是否可以限制存儲的修訂數量?這將會很有用,因爲除了每晚構建之外,我們還有幾個CI構建需要在整個一天內進行分發,但是無限次數的修訂沒有任何意義。在Perforce您可以通過設置屬性來限制修訂版本。
我會更深入地討論BitTorrent,大多數客戶支持從.rss源獲取種子,因此您可以發佈具有最新版本的源,並讓每個人自動下載。 – grapefrukt
我們希望使用自定義客戶端,因爲生產將永遠不允許我們在用戶機器上安裝一個bit-torrent客戶端,例如uTorrent的。然而,我確實喜歡發佈RSS feed並自動同步的想法(這是我們上週對我們當前的解決方案進行的破解)。 – Dennis
在讀完git之後(感謝答案中提供的鏈接),我認爲我需要再次查看BitTorrent。 – Dennis