【问题标题】:How to make git ignore temporary files created by MS Office (starting with ~$)如何让 git 忽略 MS Office 创建的临时文件(以 ~$ 开头)
【发布时间】:2020-08-31 20:09:53
【问题描述】:

我的 git 存储库包含 MS Office 文件(Word、PPT 和 Excel),每次我打开其中一个文件时,都会创建一个以 ~$<file-name> 开头的临时文件。

我尝试将*/~$* 添加到.gitignore 文件中,但还是不行;临时文件仍然在更改列表中弹出,表明一直有未跟踪的更改。我必须关闭所有办公文件才能知道我的回购是最新的。

如何解决这个问题?对于此类文件,.gitignore 是否有特殊语法?

【问题讨论】:

    标签: git gitignore


    【解决方案1】:

    要忽略任何以~$ 开头的文件,请使用以下模式:

    ~$*
    

    什么都不需要了。

    【讨论】:

    • repo中有很多子目录,文档可以在其中任意一个,而不仅仅是树的根目录。
    • @ÉbeIsaac:除非模式是锚定,否则它适用于所有子目录。 ~$* 未锚定。 (Anchored 不是 Git 术语,我是从正则表达式理论中借来的。)
    • 您使用了*/~$*,它是锚定的,并且仅适用于顶级子目录中的一级文件。所以顶级文件~$foo 不会被压制,a/b/~$foo 也不会被压制; a/~$foo 和 b/~$foo 将被禁止。请注意,任何已跟踪的文件也不受影响。注意:**/~$* 应该根据** 的描述工作,但我已经看到这也需要至少一级子目录。
    • git status 是否将文件显示为未跟踪或已修改?
    • new file: ... 中的 changes to be committed 表示它已经被跟踪,并准备好进入新的提交。您可能想确保它没有进入您所做的提交。
    猜你喜欢
    • 2012-05-05
    • 2012-03-21
    • 2011-06-16
    • 1970-01-01
    • 1970-01-01
    • 2014-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多