Я хотел исключить файл с именем config / dbconfig.js в моей общедоступной ветке, который я использую для отправки на github, но по-прежнему могу передавать из мастер-класса в git-репозиторий noester.com для запуска в производство. Я изменил файл конфигурации на это:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
excludesfile = +info/exclude
[remote "nodester"]
url = *** My Git Repo ***
fetch = +refs/heads/*:refs/remotes/nodester/*
[branch "public"]
excludesfile = +info/exclude_public
Я удостоверился, что удалил файл .gitignore, и я использую файл .git / info / exclude для общих исключений и надеялся использовать .git / info / exclude_public, чтобы исключить этот один файл, поэтому, когда я объединяю Публичный, этот файл не сливается так же как не толкает к github.
Если я сделаю следующее, он все равно добавит файл в git даже в публичной ветке. Поэтому я думаю, что у меня неправильный синтаксис или это невозможно.
$ git checkout public
$ git add .
$ git status
# On branch public
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: config/dbconfig.json
#
Если это невозможно, есть ли лучший способ иметь дело с конфигами базы данных, которые вы не хотите использовать в открытом проекте Github, без запуска двух репозиториев git и ручного слияния между ними?