使用filewatchers可以很好地使用git checkout

时间:2014-06-12 01:17:54

标签: git gulp

我目前有一个gulp观察器用于我的less + js文件,它编译较少并连接成一个缩小的css文件,使用requirejs构建一个缩小的js包,最后碰到一个nocache.json文件。

如果我运行gulp,并尝试git checkout并在我现在正在运行的分支中编辑任何css / js文件,尝试切换回master会给我一条消息说

nocache.jsonall.min.cssmain.min.js

进行本地更改(因为它们是在我提交后由filewatcher生成的),并且必须在切换之前进行隐藏。我知道我可以将--assume-unchanged设置为该分支中的那些文件,但是每次创建新分支时这都很麻烦。

只是在寻找有关如何解决这个问题的建议。

1 个答案:

答案 0 :(得分:2)

这些文件可能不应该是您的存储库的一部分。

  1. 从Git中删除它们(但将它们保存在您的工作副本中):

    git rm --cached nocache.json all.min.css main.min.js
    
  2. 忽略这些文件,因此通过向存储库add文件中添加类似内容,他们不会再次意外地.gitignore

    nocache.json
    # Assuming that all *.min.* files are generated from other source files
    *.min.*
    
  3. 提交.gitignore文件:

    git add .gitignore
    git commit -m "Ignore generated files"
    
  4. 现在Git应该完全忽略这些文件。 (您可能必须确保这些更改会影响所有分支,可能会在master中进行,然后mergerebase在其他分支中进行。{/ p >