Answers:
git update-index应该做你想要的
这将告诉git您要开始忽略对文件的更改
git update-index --assume-unchanged path/to/file
当您想重新开始追踪时
git update-index --no-assume-unchanged path/to/file
git rm --cached
会导致在其他机器上的下一个请求中检出同一分支的其他机器上的本地副本删除。参见arlocarreon.com/blog/git/…,尤其是下面的讨论。
您可以在以后保持文件未跟踪
git rm -r --cached <file>
使用添加文件
git add -u
他们推动或做你想做的任何事情。
git rm --cached .DS_Store
然后打印rm '../.DS_Store'
并删除本地文件?(git version 2.6.4 (Apple Git-63)
)
git rm --cached
但是,您不应该首先提交已编译的二进制文件和外部依赖项。使用类似Bundler的工具将其拉入。
使用以下命令取消跟踪文件
git rm --cached <file path>
git书在第2.4节“做事”中提到了这一点。基本上,您要做的就是将某些文件的索引状态重置为HEAD状态,即最新签出(或提交)的状态。撤消将文件暂存到当前索引。该任务的命令是git reset
。[1]。
因此,您必须执行的命令是:
git reset HEAD /path/to/file
git的较新版本(我相信从1.6左右开始)在执行时会将此命令(还有更多)作为提示git status
。这些版本非常用户友好。个人提示:如果您仅暂存几个文件,请使用git add -i
。这将启动交互式登台工具,使事情变得特别容易。另外,我强烈建议您阅读本书,因为这在实际情况中非常明确地介绍了git的用法。
git reset [file]
是取消登台文件的最直接方法。
我假设你是问如何删除所有这些文件在build文件夹或bin文件夹,而不是分别选择每个文件。
您可以使用以下命令:
git rm -r -f /build\*
确保您位于构建目录的父目录中。
该命令将递归地“删除” bin /或build /文件夹中的所有文件。用删除一词表示git将假装那些文件被“删除”并且不会跟踪那些文件。git确实将这些文件标记为处于删除模式。
确保确保您的.gitignore准备好即将进行的提交。
文档:git rm
要删除未跟踪的文件和文件夹,请设置git clean -fdx