[英]How to keep git from tracking all files that end with a “~”?
我正在使用Gedit,每次保存文件时,Gedit都会创建一个副本,副本的名称总是以〜结尾。 问题是,Git总是试图跟踪这些文件,我不希望这样! 有没有办法仍然可以使用git add .
,但只添加那些不以〜结尾的文件?
gitignore是要走的路。 只需在你的repo的根目录添加*~
.gitignore
。
你想要一个gitignore文件 。
如果你想用一个代字号结尾(这应该是安全的;我无法想象一个合理的用例,那就是坏的),请确保以下行位于repo文件夹顶部的.gitignore
文件中层次结构:
*~
如果你也想摆脱那些波浪号文件的本地文件系统奠定左右,你可以。 最好让Gedit将其备份文件放在其他地方。 JEdit和VIm,我最常用的两个编辑器, 都有这样的设置 ,除了加载gitignore之外,将其保存在其他地方要清楚得多。
不幸的是,Gedit没有这个选择。 它能做的最好就是关闭~
备份。 在你担心之前,最糟糕的情况是你在保存之前就丢失了文件中的内容。 这不是最坏情况 - 这就是为什么你在git repo中得到这个,对吧?
注意:如果要在本地保留~
后缀文件,请执行。 您在上面设置的.gitignore将阻止您意外地共享它们。
要防止Gedit将来创建这些备份,请打开Gedit,打开“首选项”对话框(“编辑”>“首选项”),选择“编辑器”选项卡,删除“保存前创建文件的备份副本”选项,然后单击“确定”。关。 完成此操作后,Gedit将不再使用波浪线进行备份。
要添加@filmor所说的内容,您可以创建一个全局gitignore文件,以便所有存储库都将忽略备份文件:
git config --global core.excludesfile ~/.gitignore_global
这将告诉git在$ HOME路径中查找.gitignore_global
文件,您可以在其中放置*~
规则。
当您可以编辑明文文件.git/info/exclude
时,为什么还要添加.gitignore
文件。 “当决定是否忽略路径时,git通常会检查来自多个源的gitignore模式” https://www.kernel.org/pub/software/scm/git/docs/gitignore.html
如果你将*~
添加到你的git存储库中的.git/info/exclude
文件中的一行。 Git将忽略该模式以及以tildes结尾的所有文件。
只是补充答案:
如果你有带扩展名的文本,比如Sketchup,它创建以“〜.skp”结尾的备份文件,那么你需要在.gitignore文件中添加*~.skp
〜.skp。 或者更改skp
以获取您正在使用的软件的扩展名。 或者使用*~.*
如果您确定所有以波浪号结尾的所有文件都可以安全地被忽略。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.