2014-03-26 38 views
0

基本上我使用virtualenv和pip來管理我所有的第三方模塊,到目前爲止這樣做很好。然而,當我正在開發時,我發現這些第三方模塊有各種小錯誤,我一直在我的'virtualenv'文件夾中修復它們,當然這些文件夾顯然不受版本控制,這些修復程序會丟失如果我做過點 - 升級或重新創建'virtualenv'。良好的工作流程來管理修改後的Django第三方模塊

我已經提出修復它們各自的回購,但其中一些不是很活躍,它會花費一段時間才能實施我的修復。

我的問題是,在這種情況下什麼是一個好的工作流程?我是否應該將第三方模塊放在我的項目文件夾下,這樣我可以確保我的修復程序能夠保留,但是我讀過這樣做很糟糕?

回答

1

你所描述的是一個難以解決的難題。我通常會將模塊複製到我自己的項目中,但我只會將其作爲最後一招,而且我還沒有這樣做。

相反,如果我使用的模塊,它有一個類Foo,這是不是我所需要的。我會做:

class MyFoo(Foo): 
    ... 

並重寫我需要的任何方法。然後,我只在我的項目中使用MyFoo。這通常給我我需要的行爲而不訴諸修改模塊的代碼。但是一般來說,如果我傾向於修改模塊的源代碼,我會首先廣泛地尋找替代方案。到目前爲止,我已經能夠避免它。

相關問題