2012-07-24 38 views
1

服務器我是相當新的Git和希望有人能幫助我。我們正在與一個外部提供商合作,代碼在github上有幾個分支(比如說branch1和branch2)。我們計劃讓本地的Windows git服務器使用裸回購,並且開發人員只需通過文件共享就可以訪問這些文件,然後他們就可以克隆,推,拉。本地服務器背後的原因是由於大小。Git的窗戶,Github上

什麼會着手實現,使用這種最好的方式是什麼?例如: 1.在我們的服務器上創建裸回購--git init --bare 2.向github名稱添加遠程名稱github 3.從github獲取遠程回購 4.用戶克隆我們的本地回購... 5.推/拉我們的本地... 6.你現在如何將我們的代碼合併到github上的分支?

更新: 對不起,另外一件我忘記提及的是,我們只被授予拉訪問Github,我們不能改變,由於第三方。我們只得到授權的推送權限一旦樣樣齊全

感謝

+1

威爾尺寸* *確實是一個問題?第一個克隆需要一些時間。但之後,推拉應該相當快。 – 2012-07-24 08:15:23

+0

是啊,大小是不幸的一個問題,即在它的作品必須抓住它這需要小時:( – 2012-07-24 08:20:55

+2

是的,但是每一個新的人「搶」是一次性的事情。保持同步鏡是矯枉過正這一點。如果你真的需要,從github克隆一次,在某處創建一個裸回購,並推動它,讓人們從第一次克隆,然後使用github作爲遠程。 – 2012-07-24 08:25:00

回答

1

您既可以設置一個腳本來推動改變高達Github上,因爲它們出現在庫中,或者你可以任務有人作出決定時,有必要並手動將他們自己的回購克隆的更改推送到Github。請記住,在分佈式環境中,沒有任何特定的存儲庫有任何技術上的理由與其他存儲庫不同:這都是約定。你應該小心,雖然

一兩件事:使用文件共享,在你的服務器上的所有回購變更會直接由用戶在做推動製造。即使在局域網上,這可能比通過互聯網與智能服務器交談要慢。過去,我在使用SMB遠程Git存儲庫方面也遇到了困難。如果可以的話,建立一個服務器而不是僅僅使用文件共享。如果這不可行,那麼測試一下,並確認你確實獲得了更好的性能。

正如評論指出,沒有理由建立一個同步鏡爲人民做初步得到:請記住,所有的庫將具有相同的數據。與其每次都下載整個歷史記錄,沒有什麼能夠阻止某個新人從他們旁邊的同事那裏獲取所有歷史記錄,然後拉動並推送到Github。

+0

對不起,另外一件我忘記提及的是我們只被授予對github的訪問權限,我們不能因第三方而改變。一旦一切都完成,我們只會獲得授權推送訪問 – 2012-07-24 11:20:09

+0

然後,您真的想在某處運行自己的服務,而不是使用文件共享 - 即使只使用https://www.kernel.org/pub/software/scm/ git/docs/git-http-backend.html – 2012-07-24 13:08:16

+0

太好了,我會這麼做的。一旦完成,這個過程就像這樣。 1.在本地服務器上創建裸回購 2.從github獲取 3.在devmachines上,從本地服務器克隆回購和推/拉到該服務器 4.然後當所有完成後,推動更正github上的分支從一臺開發機器? – 2012-07-24 14:31:27

0

無論什麼時候遇到問題,請不要忘記,Git不是一個集中式VCS,您可以在其中放入的所有內容

你應該分解的大集文件分成幾個混帳回購協議,允許開發商克隆/工作只對其中的一些回購。

上的文件共享的任何工作,應避免使用Git:它殺死性能...