获取git不推送已经被跟踪的某些文件

时间:2014-01-23 15:22:18

标签: git

我有同一网站的本地和远程存储库,但有些文件我想保持独立。

本地存储库上有一个配置文件和一个.htaccess文件,但我想在远程控制器上保留这些文件的不同副本。如果这些文件已被跟踪,我如何让git忽略这些文件?

2 个答案:

答案 0 :(得分:2)

我认为你正在寻找assume-unchanged旗帜。

基本上,请尝试运行以下命令

git update-index --assume-unchanged <filename>

这将停止跟踪文件filename的任何本地更改。

要撤消上述命令的效果,请使用git update-index --no-assume-unchanged

答案 1 :(得分:0)

正确的git工作流程将是使用分支。例如,让您的主分支与远程同步,并为配置和.htaccess文件的更改创建一个“本地”分支。

使用此设置,您可以在master中完成大部分工作,然后当您想在本地测试时,您将首先执行此操作

git checkout local
git merge master

这种方法的优点是,如果配置或.htaccess文件在远程上发生变化,它应该显示为与本地分支的合并冲突(这很好,因为可能会将新的更改添加到您的本地配置)。