2011-08-04 22 views
1

我目前正在研究我們的Python產品的部署技術。我們已經使用多個git存儲庫管理我們的代碼,但想要改進設置和更新服務器的過程。看來easy_install,.egg文件和virtualenv是現在這樣做的最佳工具。創建從git倉庫安裝的Python .egg

這裏有一個問題:我們沒有真正進行版本控制;我們所有的產品都有一個主分支,它應該始終提供穩定的代碼。如果我們想更新,我們必須在每臺服務器上爲每個產品及其所有依賴關係提供git pull主分支。

這個解決方案非常耗時,我們想改進它。

我的想法是在所有服務器/安裝上創建一個virtualenv實例,並使用easy_install來安裝和更新我們自己的軟件包,但是我找不到一種方法將git存儲庫指定爲源代碼的源代碼。

有沒有辦法做到這一點?我錯過了什麼?我會走錯方向嗎?這總體上是一個糟糕的主意?

由於提前, 費邊

回答

4

可以使用pip代替easy_install的,它支持多種可能的方式來指定在哪裏得到的包從,一個是git,然後你可以安裝你的包是這樣:

PIP安裝的git://my.git-repo.com/my_project.git

+1

更妙的是,你可以保持URL在需求文件和安裝/升級whol一氣呵成。 –

+0

謝謝,我沒有明白。現在我必須弄清楚如何支持git://協議,目前我們使用ssh://。 – Fabian

+1

你可以通過'sit'通過'ssh'在pip中使用'git + ssh://'開始你的url(是的,pip很棒:p) – MatToufoutu