장고 프로젝트가 있고 자식을 사용하고 있습니다.병합 할 때 파일을 무시하지만 푸시에 포함 시키십시오.
각 지점마다 다른 settings.py 파일이 있어야합니다.
나는 settings.py를 .gitattributes with merge = ours에 추가했으나 충돌이 없다면 Git이 정상적으로 병합하기 때문에 작동하지 않습니다.
또한 settings.py를 .gitignore에 추가하는 것은 옵션이 아닙니다. settings.py에서 설정을 변경하면 동일한 분기로 푸시해야합니다.
병합 할 때 파일을 무시하지만 여전히 밀어 넣는 방법이 있습니까?
UPDATE :
나는 VonC의 솔루션을 시도하고 나는이 두 가지 설정 만들었습니다 settings_production.py 및 settings_development.py을.
그래서, gitpython를 설치 PIP와 같이, 내 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 *
그리고 그것은 괜찮 았는데. 내가 선호하는
[브랜칭 : 릴리스/개발을위한 다른 설정 파일] (http://stackoverflow.com/questions/9636492/branching-different-config-files-for-release-development)의 가능한 복제본 –