比如說我的專案有兩個分支
$ git branch master * dev
在 dev 分支下面有兩個3個資料夾是 ignore 的: bower_components/, node_modules/, dist/.
dev
bower_components/
node_modules/
dist/
現在我在dev 下面提交之後, 切換到master 分支去,結果在master 分支下也可以看到bower_components/, node_modules/ ,是我操作不對嗎?如何解決呢?
master
node_modules/ ,是我操作不對嗎?如何解決呢?
认证高级PHP讲师
如果這幾個文件出現在版本管理中,那是因為
.gitignore 檔案是在版本控制裡的
dev分支下的 .gitignore 记录了你要忽略的文件但是在master分支下, .gitigonre 還沒記錄你要忽略的內容
解決方法(更新master的.gitignore)
方法1. merge dev -> master方法2. add ignore files in .gitignore at master branch
你在一個分支修改了程式碼並提交,對其他分支是並無影響的。同理,你只是在dev 分支下忽略了文件,對其他分支來說是並無影響的,所以你要做的是去其他分支重複做一遍忽略的動作,或者把dev 分支下的修改merge 到其他分支去。
不是你操作不正確,而是你加入gitignore之後,git不關心這些檔案了,所以切換不切換分支,這些檔案都在那裡
如果這幾個文件出現在版本管理中,那是因為
dev
分支下的 .gitignore 记录了你要忽略的文件但是在
master
分支下, .gitigonre 還沒記錄你要忽略的內容解決方法(更新master的.gitignore)
你在一個分支修改了程式碼並提交,對其他分支是並無影響的。同理,你只是在dev 分支下忽略了文件,對其他分支來說是並無影響的,所以你要做的是去其他分支重複做一遍忽略的動作,或者把dev 分支下的修改merge 到其他分支去。
不是你操作不正確,而是你加入gitignore之後,git不關心這些檔案了,所以切換不切換分支,這些檔案都在那裡