我刚接触Git,还不知道它能满足我的需求,但它看起来很不错。
我有一个单独的webapp,可供不同的客户使用(django+javascript)
我计划使用git作为分支来处理这些不同的客户版本。每个客户都可以有自定义的文件、文件夹和设置、改进的版本…但应该共享相同的“核心”。我们是一个小团队,使用了一个Github帐户。
分支机构是处理这个案件的好方法吗?
关于设置文件,您将如何继续?您是否可以忽略客户特定的设置文件并添加一个settings.xml.sample文件,例如repo?
另外,是否有任何方法可以阻止某些文件合并到主控形状中?(但委托给客户分公司)。例如,ID希望将一些客户数据保存到客户分支机构,但防止提交给master。
.gitignore文件分支是否特定?对
编辑
阅读完所有答案后(谢谢!)我决定首先重构我的Django项目结构,将核心和不同的应用程序隔离在一个子文件夹中。这样做可以使项目更干净,并且调整.gitignore文件可以方便地使用git分支来管理不同的客户和设置!
Ju。
最佳答案
除了cpharmston的答案之外,听起来您还需要进行一些重构,以区分每个客户机真正自定义的内容和不自定义的内容。然后,您可以考虑添加其他存储库来跟踪每个客户机的自定义内容(全新的回购,而不是分支)。然后,您的部署可以将您的“核心”从主回购中拉出来,从该回购中拉出来特定于客户机的东西。
关于django - 一个项目,多个客户使用git?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1430284/