让git忽略vim在所有目录中生成的临时文件的正确方法是什么(无论是跨系统全局的还是单个项目的本地的)?
当前回答
或者,您可以配置vim以将交换文件保存到单独的位置, 例如,在你的.vimrc文件中添加如下代码行:
set backupdir=$TEMP//
set directory=$TEMP//
有关更多信息,请参阅这个vim技巧。
其他回答
肯定的是,
只需要创建一个“。Gitignore”在项目的主目录上 并且必须控制
*.swp
就是这样
在一个命令中
project-home-directory$ echo '*.swp' >> .gitignore
或者,您可以配置vim以将交换文件保存到单独的位置, 例如,在你的.vimrc文件中添加如下代码行:
set backupdir=$TEMP//
set directory=$TEMP//
有关更多信息,请参阅这个vim技巧。
正如Alex Moore-Niemi所指出的,这适用于Mac:
set backupdir=$TMPDIR//
set directory=$TMPDIR//
确保使用TMPDIR而不是TEMPDIR。
这应该只针对每个用户进行,而不是针对每个存储库。如果Joe使用emacs,他希望忽略emacs备份文件,但是Betty(她使用vi)希望忽略vi备份文件(在许多情况下,它们是相似的,但是存在大约24,893个常见的编辑器,试图忽略所有不同的备份扩展名是非常荒谬的)。
换句话说,不要把任何东西放在。gitignore或core中。在$GIT_DIR/config中排除。把信息放在$HOME/。改用Gitconfig(如nonopolonia建议的使用——global。)注意,“全局”指的是每个用户,而不是每个系统。
如果您希望为所有用户在整个系统中进行配置(实际上并不是这样),那么您将需要一种不同的机制。(可能在初始化存储库之前设置模板。)
在“git commit”之前退出vim。
要使vim使用其他文件夹作为备份文件(例如/tmp):
set bdir-=.
set bdir+=/tmp
要使vim停止使用当前文件夹的。swp文件:
set dir-=.
set dir+=/tmp
使用-=,+=通常会很好,因为vim对bdir, dir有其他默认值,我们不想全部清除。查看vim帮助以获得更多关于bdir, dir的信息:
:h bdir
:h dir
推荐文章
- 如何设置一个git项目使用外部回购子模块?
- Git同时在两个分支上工作
- 如何在Visual Studio中删除未推送的外向提交?
- Git在两个不同的文件之间的差异
- 我如何使用vimdiff来解决git合并冲突?
- 如何将更改提交到另一个预先存在的分支
- 为什么使用'git rm'来删除文件而不是'rm'?
- 我如何安装imagemagick与自制?
- 致命:git-write-tree:错误构建树
- Git克隆远程存储库的特定版本
- 在Vim中删除当前缓冲区的文件名/路径
- git隐藏的意图用例是什么?
- 从远程Git存储库检索特定的提交
- 如何配置git bash命令行补全?
- 我如何迫使git拉覆盖每一个拉上的一切?