我的整个网站都保存在git repo中。这包括一个具有各种apache指令的.htaccess文件。
这些指令特定于我的生产环境。我遇到了一个问题,其中一些规则在我的开发环境中造成了问题。我希望在回购中维护.htaccess文件,因为历史记录对于能够引用非常重要。但是在我的开发空间中,我希望能够修改该文件,使其适合该环境。
是否可以设置.gitignore语句,该语句将忽略开发中对此文件的更改,但是在生产环境中维护它们?
答案 0 :(得分:0)
不,你无法改变Git如何在每个环境中跟踪文件。
此问题有两种可接受的解决方案,两种方法都涉及忽略.htaccess
:
检查文件的所有可能版本,并将符号链接指向正确的版本。创建一个.htaccess.prod
和一个.htaccess.dev
文件,然后创建一个未跟踪的符号链接到正确的.htaccess
。这允许您对每个环境文件的内容进行版本控制,同时仍然允许您将工作目录部署到生产环境。
签入"示例"在每个环境中创建并创建未经跟踪的副本。当有问题的配置文件包含敏感数据(如凭据)时,通常会使用此选项。创建一个.htaccess.example
文件,然后在每个环境中将其复制到.htaccess
并进行特定于环境的修改。您可能不想要此选项,因为它不允许您对特定于环境的更改进行版本控制。