我可以忽略本地文件而不污染其他人的全局git配置吗?我的git状态中有未跟踪的文件是垃圾邮件,但我不想为我在本地分支中的每一个未跟踪的小文件提交git配置更改。
当前回答
更新:考虑使用git更新索引--跳过工作树[<file>…],谢谢@danShumway!参见Borealid对两个选项差异的解释。
旧答案:
如果您需要忽略跟踪文件的本地更改(我们对配置文件进行了本地修改),请使用git更新索引--假设未更改[<file>…]。
其他回答
将以下行添加到.gitconfig文件的[alias]部分
ignore = update-index --assume-unchanged
unignore = update-index --no-assume-unchanged
ignored = !git ls-files -v | grep "^[[:lower:]]"
现在,您可以使用git ignore my_file忽略对本地文件的更改,使用git unignore my_file停止忽略更改。git-ignored列出了被忽略的文件。
这个答案是从http://gitready.com/intermediate/2009/02/18/temporarily-ignoring-files.html.
您有几个选项:
在工作目录中保留一个脏的(或未提交的).gitignore文件(或使用topgit或其他类似的修补工具自动应用它)。将排除项放入$GIT_DIR/info/exclude文件(如果这是特定于一棵树的)。运行git-config--global-core.excludsfile~/.gitignore,并将模式添加到~/.gigignore中。如果要忽略所有树中的某些模式,则应用此选项。例如,我将此用于.pyc和.poo文件。
此外,如果适用,请确保您使用的是模式,而不是显式枚举文件。
如果您的repo还没有.gitignore文件,那么一个简单的解决方案是创建.gitignorefile,并在其中将.gitignor添加到要忽略的文件列表中。
在项目存储库中,接受的答案对我来说很有用。git在排除文件中添加了以下内容:
wp内容/插件
wp内容/上传
对于希望忽略子模块中本地文件的任何人:
使用与.gitignore文件相同的格式编辑父repo/.git/modules/my子模块/info/exclude。
推荐文章
- 如何设置一个git项目使用外部回购子模块?
- Git同时在两个分支上工作
- 如何在Visual Studio中删除未推送的外向提交?
- Git在两个不同的文件之间的差异
- 我如何使用vimdiff来解决git合并冲突?
- 如何将更改提交到另一个预先存在的分支
- 为什么使用'git rm'来删除文件而不是'rm'?
- 我如何安装imagemagick与自制?
- 致命:git-write-tree:错误构建树
- Git克隆远程存储库的特定版本
- git隐藏的意图用例是什么?
- 从远程Git存储库检索特定的提交
- 如何配置git bash命令行补全?
- 我如何迫使git拉覆盖每一个拉上的一切?
- 撤销“git add <dir>”?