我有一个django项目,我正在使用git.
我需要为每个分支设置不同的settings.py文件.
我已经测试了使用merge = ours将settings.py添加到.gitattributes,但它没有用,因为如果它没有任何冲突,Git将正常合并.
另外,添加settings.py到.gitignore不是一个选项,因为如果我在settings.py中更改了某些内容,我希望它被推送到同一个分支.
有没有办法在合并时忽略文件但仍然推送它?
更新:
我尝试过VonC的解决方案,并创建了两个设置:settings_production.py和settings_development.py.
所以,我点了安装gitpython并在我的settings.py中使用它,如下所示:
from git import Repo
import os
r = Repo(os.path.realpath(os.path.dirname(__file__)))
if r.active_branch.__str__( == 'master':
from settings_production.py import *
else:
from settings_development.py import *
Run Code Online (Sandbox Code Playgroud)
它工作得很好.
我们公司使用许多定制的开源项目。每当我向上游分支机构捐款时,我都会更改为使用我的个人电子邮件地址/名称。有什么办法让每个分支都有gitconfig吗?
例如我想要的是
[remote 'gerrit']
name = 'Personal Name'
[branch 'origin']
name = 'Name in company'
Run Code Online (Sandbox Code Playgroud)