2014-09-22 84 views
0

我們目前開始與Git合作並遇到一些麻煩。使用Git與現有的文件和更新分支後推

Baiscally我想要的是有一個Git-Repository,用戶可以推送和拉。

另外,這個存儲庫應該作爲主分支的預覽版本,因此我們需要在存儲庫本身中包含腳本文件。

我使用「git init test.git」啓動了存儲庫。所以這不是光禿禿的回購。

問題是如何設置git,它將主分支的當前版本保存爲真實文件,並且我可以設置一個url以訪問存儲庫的當前主分支。

當我創建一個存儲庫並嘗試推送到它時,我得到一個錯誤,當前主分支在存儲庫上檢出,我不能推到它。

任何想法?

回答

1

您不能推送到非裸倉庫!你不能推送到檢出分支!

現在給你的情況我的建議是:

保持一個幸運的裸倉庫!在當地進行所有的發展,對主人進行合併/重新組合,然後推動祝福。

你可以編寫帶有代碼的幸運光禿後接受掛鉤/運行一個代碼爲cd的腳本到你的生產回購中,並且從幸運的光禿禿的下拉(這將是一個快進你可能已經解決衝突,然後推動祝福光禿禿的)

這樣,在每一次推動'保佑裸',你拉到生產和更新檢出主!

希望這可以解決問題。

快樂接通!

+0

這似乎是一個很好的解決方案:) 你試過嗎? 我有一個後收到腳本現在通過這樣的 CD /var/www/.../ git的那張CD到正確的目錄拉 但沒有happends 如果我用手工調用腳本它被執行正確 – phil 2014-09-22 11:17:29

+0

@ phil:很高興知道你喜歡這個解決方案。不,我沒有嘗試過,但我做了類似的事情,因此我知道它會起作用。當您手動執行腳本時沒有任何反應,因爲當您推送到'blessed_bare'時不得不發生的事情已經發生。 – 2014-09-22 14:09:01

-1

根據您所描述的內容,我認爲實施名爲GitFlow的分支策略可能適合您。

+0

我不認爲它解決了這個問題。它似乎只是一個常規的git工作流程,只不過'master'被重命名爲'develop'。另外,它似乎在多版本環境中失敗,因爲修補程序是在主服務器上完成的。 – 2014-09-22 11:21:14

+0

你甚至讀過博客文章嗎?!?有兩個分支。一個主人,一個發展。關於這個問題,所有的工作都在開發分支上完成,從開發分支創建並實例化功能和發佈。然後,工作完成並測試後,它們被推送到受保護的主分支。是的,修補程序是在主分支中完成的,特別是出於您指出的原因以支持多版本支持。 – 2014-09-22 11:55:19

+0

是的,我讀過博客文章,這就是爲什麼我在談論它的內容。 – 2014-09-22 11:58:27