Git在拉动时忽略文件

问题描述 投票:1回答:3

我是github的新手,我正在开发一个具有config.php文件的应用程序,您必须输入数据库凭据。

在我的github存储库中,文件是这样的:

<?php
$host_name  = "<HOST>";
$database   = "<DATABASE>";
$user_name  = "<USER>";
$password   = "<PASSWORD>";
?>

但在网站上我有文件凭证:

<?php
$host_name  = "myhost";
$database   = "mydatabase";
$user_name  = "myuser";
$password   = "mypassword";
?>

在.gitignore文件中,当我开发时,我把我不想推送到我的github存储库的文件,但我现在要做的是当我拉动时忽略文件。

我想要的是从我的github存储库更新我的网站,但我想忽略config.php文件,因为这在每次安装时必须是唯一的。

我该怎么做?抱歉,这个菜鸟问题:(

问候。

git github
3个回答
2
投票

.gitignore用于忽略未跟踪的文件,但您需要忽略已跟踪文件中的更改。你可以使用git update-index --skip-worktree /path/to/config.php

https://git-scm.com/docs/git-update-index#_skip_worktree_bit


1
投票

要停止跟踪文件,您需要将其从索引中删除。这可以通过以下命令实现:

git rm --cached <file>

承诺改变

git commit -am "Remove ignored config.php"


1
投票

Dmitriy Smirnov给了我一个解决方案但是对于我来说更简单的解决方案是轴心评论。

谢谢你们的帮助。

现在我有一个config.php文件的模板,其中包含config-sample.php,如安装中的wordpress make。因此,当我提取更新文件时,不会覆盖包含数据库凭据的config.php。

编写config-sample.php记住我必须编写config.php文件并给我一个模板,说明我必须做什么来完成安装。

问候。

© www.soinside.com 2019 - 2024. All rights reserved.