Подтвердить что ты не робот

Как скрыть строку подключения, имя пользователя, pw при использовании источника управления?

Я работаю над небольшим побочным проектом, и я использую строки подключения, а также ключи и значения api, которые не следует рассматривать или использовать другими людьми. Я использую публичную учетную запись GitHub для контроля источника. Каков обычный метод использования источника управления, когда эти значения находятся в виде простого текста в web.config?

Нужно ли вручную удалять значения перед проверкой кода?

4b9b3361

Ответ 1

То, что я нахожу, это проверить версию файла с затуманенными или фиктивными значениями, а затем запустить:

git update-index --assume-unchanged [fileName]

Git перестанет отслеживать изменения в этом файле, позволяя вам вставлять в него реальную конфигурационную информацию, не опасаясь проверить ее.

Если вы позже вносите изменения, которые вы хотите проверить, вы можете запустить:

git update-index --no-assume-unchanged [fileName]

Ответ 2

Мы сохраняем конфиденциальную и/или специфичную для машины конфигурацию в отдельных файлах конфигурации, а затем используем configSource, чтобы включить их так...

<connectionStrings configSource="cstrings.config"/>

Таким образом, вы можете проверить в Web.config и файл cstrings.config, который имеет общее значение, которое можно использовать на dev-машине. (например, (локальный),... MyAppNameDb...)

В производственных средах отметьте файл cstrings.config как доступный только для чтения и настройте развертывание script, чтобы вы не пытались написать над ним. Строка вашего производственного подключения защищена любой защитой, которую вы используете в этом поле. Это позволяет сохранить чувствительные строки вне контроля версий.

cstrings.config

<?xml version="1.0" encoding="utf-8" ?>
<connectionStrings>
    <add name="Default" connectionString="Server=localhost"/>
</connectionStrings>

Ответ 3

Вы можете проверить файл, например config.sample, который содержит фиктивные значения. Каждый разработчик затем копирует этот файл в конфигурацию и редактирует их собственные значения. Затем вы помещаете этот локальный файл в .gitignore.