git:忽略生产分支中的源和开发中的缩小文件

Ant*_*rov 7 git version-control version

我无法找到合理的解决方案,因为我认为这是一个非常简单的任务.考虑source我的项目中有一些目录,其中包含所有源文件.在发展模式,我改变源文件,并咕嘟咕嘟minifies他们进入.min.js.min.css,并将它们放入public目录(澄清,我建立一个Node.js的应用程序).

现在,我有两个分支:master生产和development开发.

master分支上的.gitignore文件

.DS_Store
node_modules
source
...
Run Code Online (Sandbox Code Playgroud)

development分支上的.gitignore文件

.DS_Store
node_modules
public/javascript
public/stylesheets
...
Run Code Online (Sandbox Code Playgroud)

我想要获得的行为:1)忽略缩小的文件以进行开发(每次我更改代码时它们都会被组合和缩小),但保留源代码; 2)忽略生产的源文件(因为当我$ git pull进入生产环境时我不想拥有它们),但要保持缩小.

出于某种原因,当我来回切换,从masterdevelopment,混帐完全删除一些文件,并打破了一切.例如,它擦除了每个模块的所有内容node_modules,强迫我$ rm -rf node_modules && npm install每次切换分支时都会这样做.

很感谢任何形式的帮助.


这里还描述了这个问题:使用git,我如何忽略一个分支中的文件但是在另一个分支中提交它?,但没有可行的解决方案.

Mor*_*ort 4

我觉得你问错了问题。缩小的脚本是“构建产品”,而不是“源代码”。在我看来,某种“make install”过程应该创建它们,而不是将它们放在源代码管理中。但我不在网络空间工作,所以我不知道标准做法是什么。