Я подпишу ответ подмодуля, но постараюсь дать некоторые пояснения.Во-первых, git работает не с файлами, а с коммитами.Невозможно отфильтровать файлы или пути в ветви, потому что ветка действительно является указателем на коммит.Когда вы исключаете или игнорируете, вы просто не позволяете файлам быть добавленными в ваш репозиторий.ни один из файлов «конфиденциальных файлов» даже не находится в репозитории, только в вашем рабочем каталоге.
Подмодуль - это просто ссылка на другой репозиторий, хранящийся в вашем репозитории, и конкретная фиксация, для которой извлечен репозиторий.отслеживание.Вы можете сказать обновление, используя
git submodule update --recursive sensitive-files
Чтобы упростить вещи, вы можете зафиксировать символические ссылки в нужном месте, указывая путь субмодуля.
ln -sf sensitive-files/shadow passwd
Затем добавьте символическую ссылку, как вы былюбой другой файл ..
Помните, что подмодуль - это просто извлеченный репозиторий git, вы можете легко ограничить доступ к этому фактическому репозиторию и сделать основной общедоступным.
Обновлено:
Извините, я пропустил уведомление, если вы все еще работаете над этим.
В вашем личном репозитории может быть несколько символических ссылок, ссылающихся на частный репозиторий (подмодуль), который извлекается в подкаталоге. Каждая база данныхили то, что используется экземпляром Rails, может быть символической ссылкой на этот частный подкаталог.
Кроме того, вам не нужно удаленное указание на частный репозиторий, просто запись в файле .gitmodules, которая автоматически поддерживается Подмодуль git .Вам все равно нужно защитить частный репозиторий, чтобы только ваш экземпляр Heroku мог получить к нему доступ.Для этого я бы предложил установить gitosis на сервере, если вы можете, или использовать какое-то другое решение для частного git-хостинга.Добавьте открытый ssh-ключ, соответствующий личному ключу вашего экземпляра, в список разрешенных пользователей.(Я не знаю, как это сделать в Heroku.)
Когда вы вносите изменения в heroku, он должен рекурсивно загружать все подмодули, упомянутые в хранилище.