比如说我的项目有两个分支
$ git branch master * dev
在dev分支下面有两个 3 个文件夹是 ignore 的:bower_components/, node_modules/, build/.
dev
bower_components/
node_modules/
build/
现在我在dev下面提交之后,切换到master分支去,结果把bower_components/, node_modules/, build/这些目录也带过去了。如何忽略他们呢?
master
checkout 的时候需要额外的参数?
我觉得你切换到 master 分支的时候不是应该再从 dev 分支上 merge 么 $ git merge dev
#2 楼 @ucooling 还没有到需要merge的时候。
merge
#1 楼 @Blues 不知道,搜下。
发现个问题,@huacnlee, @Rei, @Ign21st, 他们的回复,在我的消息中心,没有原先那个红色的提示了。
试试 git checkout --force master
git checkout --force master
#4 楼 @ery 刚才建了一个文件夹试了下,还是有的。
再切回 dev 还要有吗?...
.gitignore 只影响 Git 是否 Track 这些文件,而不是影响你的工作目录下面到底有什么。
如果你创建 dev branch 时的 branch 没有这些文件夹,那么你在 dev commit 之后,切换回去就不应该有。
#6 楼 @krazy 要有的。其实就是两个不同的版本,所以里面的项目结构都变化蛮大。 #7 楼 @willmouse 我是新创建一个 dev 分支,然后在 dev 分支下面添加的这些文件,其实是npm和bower工具安装的一些包,这些包只在 dev 分支下使用,并且是属于.gitignore里面 ignore 规定的文件夹。
npm
bower
.gitignore
#8 楼 @1272729223 你 dev 是从哪个分支 checkout 出来的?master?如果切回 master 还有,你把里面该删的删了,commit,切回 dev 不就完了。