推到GitHub,如何用敏感信息替换配置文件?
我有一个带有SETTINGS.ini配置文件的项目,其中包含我显然不想包含在GitHub存储库中的敏感信息。我知道.gitignore不会将其推送到远程存储库,但我想知道如何用其他一些SETTINGS.ini文件替换SETTINGS.ini,而不在远程存储库中手动删除它?最佳做法是将SETTINGS.ini.sample(或类似名称的)文件放在存储库中,其中包含一些虚拟值,并包括将该文件复制为SETTINGS.ini的说明,以及使用该文件的用户的正确值。将SETTINGS.ini保留在gitignore中。请注意,您所知道的推到GitHub,如何用敏感信息替换配置文件?,git,github,configuration,Git,Github,Configuration,我有一个带有SETTINGS.ini配置文件的项目,其中包含我显然不想包含在GitHub存储库中的敏感信息。我知道.gitignore不会将其推送到远程存储库,但我想知道如何用其他一些SETTINGS.ini文件替换SETTINGS.ini,而不在远程存储库中手动删除它?最佳做法是将SETTINGS.ini.sample(或类似名称的)文件放在存储库中,其中包含一些虚拟值,并包括将该文件复制为SETTINGS.ini的说明,以及使用该文件的用户的正确值。将SETTINGS.ini保留在gitig
.gitignore
是错误的,一个重要的方面是:在中列出该文件。gitignore
不会阻止将该文件(作为现有提交的一部分)推送到另一个Git存储库(gitpush
推送整个提交,因此无论其中包含什么文件,每次都要继续进行)。在.gitignore
中列出文件的目的是避免提交文件,这样它就永远不会真正在存储库中,因此在复制存储库时不会被复制。换句话说,如果文件已经在提交中,请小心。如果它还没有在任何提交中,您就可以了。