Ubuntu下使用Git如何避免编辑器生成的~后缀备份文件被纳入提交?
后缀带~的文件是Vim、Gedit等文本编辑器自动生成的临时备份文件,Git的add、commit操作仅会处理已指定追踪的文件,不会主动删除工作区中未纳入版本管理的文件,因此执行操作后这类文件依然会保留。
要永久避免这类文件干扰Git操作,可以通过.gitignore规则配置实现,分两种场景:
单仓库生效配置
- 在Git仓库根目录新建名为
.gitignore的文件 - 在文件中添加规则
*~,即可匹配所有后缀为~的备份文件,你也可以按需添加其他常见临时文件的规则,比如*.swp(Vim交换文件)、.DS_Store(Mac系统临时文件) - 把该规则文件提交到仓库即可永久生效,执行命令:
git add .gitignore git commit -m "新增编辑器备份文件忽略规则"
配置完成后Git会自动忽略所有符合规则的文件,不会再提示你提交这类文件。
全局生效配置
如果你希望本地所有Git仓库都自动忽略这类备份文件,可以配置全局忽略规则:
- 在家目录新建名为
.gitignore_global的文件,写入需要全局忽略的规则,比如*~ - 执行命令绑定全局规则:
git config --global core.excludesfile ~/.gitignore_global
配置完成后不需要每个仓库单独设置规则。
现有备份文件批量清理
如果需要一次性清理当前仓库下所有已存在的~后缀备份文件,可以直接执行批量删除命令,不用手动逐个删除:
- Linux/macOS终端执行:
find . -name "*~" -type f -delete - Windows cmd执行:
del /s /q *~
内容的提问来源于stack exchange,提问作者adler
相关产品推荐
相关产品推荐

