我在一个团队的项目中工作,我需要不时检查其他人的分支机构。事情就是这样。
所有CSS和JS文件都是从SASS / Coffeescript编译的,它们都存储在/Static
目录中。显然,编译的文件不包含在远程存储库中。所以我克隆存储库并编译它们,以便我可以在我的本地机器上运行它。我将/Static
目录放入.gitignore
。
现在让我说我在不同的分行办理结帐。每次我这样做,它都会中止,因为有未提交的文件(那些已编译的文件)。如果我运行git checkout <branch> --force
他们显然会消失,所以我每次运行结帐时都必须编译它们。
那么,在提交,结账或任何其他操作时,如何让git完全忽略/Static
目录(或任何其他我可能想要的)?换句话说:如何在存储库中使目录在git操作方面完全不活动?感谢名单
答案 0 :(得分:1)
您应该在存储库中将/Static
添加到.git/info/exclude
。它充当了用于忽略文件的存储库范围的机制。
答案 1 :(得分:1)
我认为你并没有真正忽视/静态。 如果/ Static真的被忽略了,你可以毫无问题地做你想做的事。
我认为您已将/ Static添加到.gitignore,但/ Static以前是控件版本的,因此包含在.gitignore中无效。
我的意思是,如果初始克隆包含/ Static,那意味着/ Static正在进行控制版本化。 要开始忽略以前版本化的东西,首先要停止控制版本化:
git rm --cached <your-directory>
然后开始忽略它
<add your directory to .gitignore>
git commit -m "Removed <directory> from control version."