git忽略配置文件

sto*_*ain 1 git

我不知道为什么这对我来说似乎不太清楚.

我有2个repos,repo1和repo2.每个回购都是分支:staging masterlive

我认为我的问题的一部分是我.gitignore在开始使用git后试图开始工作(例如,在gitignore正确填充之前,repos是init'd).

我已经尝试了所有精彩git-update-index --assume-unchanged file的和git rm -r --cached .我能找到的整洁的东西,但我仍然不理解,因为它仍然不起作用.

我想在pull和push上忽略一些特定的配置文件和缓存文件夹.

1

如果我正在使用repo1> staging并且我推送到repo2> staging,哪个.gitignore优先?或者它们都被应用了吗?

2

在几次尝试中,我似乎已经获得了在推送时忽略的配置文件,但它不是仅仅将更改发送到这些文件,而是将它们完全从分支中删除.混乱.

3

如果为了让.gitignore正常工作而重新开始(这是一个选项)会更聪明,那么这将是一种聪明的方法,以便不会丢失所有提交(它们不需要新的访问权限)回购,只为FUBAR清酒).

谢谢


澄清:

我现有的存储库中有一些文件,我不再希望在push或pull上传输.

.gitignore要么不是忽略,要么是通过删除忽略 - 这不起作用,因为当我推送时,我需要那些配置文件在另一端,而不是通过推送删除.

我以为我会聪明并开始使用git.它非常冗长,因此对newp感到困惑.

我想:

我可以有一个master和staging on production(prod),一个master和staging on dev(dev);

  • 我会开发dev> staging分支,批准渐变和其他更改,然后推送到prod> staging;

  • 在prod,git checkout staging和view以确保它有效;

  • 一切正常,合并prod> staging prod> master,checkout prod> master for live site.

  • 然后我将prod> master拉入dev> master,将dev> master与dev> staging合并(或者不是,如果它们是相同的),并在dev> staging上再次开始循环.

他们使用不同的数据库,以免在开发过程中污染产品,将它们分开是很重要的.

Bij*_*dra 5

.git/info/exclude如果您希望基于存储库的排除模式,您可以将它们放在名为.git/info/exclude或core.excludesfile的特定存储库中的文件中.

.gitignore用于添加您不想跟踪的文件.如果文件已被跟踪,并且您要添加到.gitignore.运行git rm --cached filename