搜尋

首頁  >  問答  >  主體

.gitignore 支援幾層目錄?


這樣寫的話依然還是忽略的,但是如果我是寫!/upload/2011就不被忽略了。

所以我有個疑問,gitignore就只是支二層目錄的忽略規則嗎?

ringa_leeringa_lee2795 天前672

全部回覆(3)我來回復

  • 漂亮男人

    漂亮男人2017-05-02 09:30:43

    11後面不加'/'試試看:!/upload/2011/11

    回覆
    0
  • 黄舟

    黄舟2017-05-02 09:30:43

    【參考連結】:忽略文件 / Ignoring Files

    文件 .gitignore 的格式規格如下:

    • 所有空白行或以 # 開頭的行都會被 Git 忽略。

    • 可以使用標準的 glob 模式匹配。

    • 匹配模式可以以(/)開頭防止遞歸。

    • 匹配模式可以以(/)結尾指定目錄。

    • 要忽略指定模式以外的檔案或目錄,可以在模式前加上驚嘆號(!)取反。

    所謂的 glob 模式是指 shell 所使用的簡化了的正規表示式。 星號(*)匹配零个或多个任意字符;[abc]
    匹配任何一个列在方括号中的字符(这个例子要么匹配一个 a,要么匹配一个
    b,要么匹配一个c);问号(?)只匹配一个任意字符;如果在方括号中使用短划线分隔两个字符,表示所有在这两个字符范围内的都可以匹配(比如
    [0-9]表示匹配所有 0 到 9 的数字)。 使用两个星号(*) 表示匹配任意中间目录,比如a/**/z 可以匹配
    a/z, a/b/za/b/c/z等。

    回覆
    0
  • 某草草

    某草草2017-05-02 09:30:43

    任意層級

    .gitignore 一般用我们使用 git add .这种命令中没有明确指定要加入的文件时忽略 .gitignore 中声明的文件,但以! 開頭的規則不會被排除。

    /uploads/*
    !/uploads/2011/11/

    這樣的組合而成的,這樣可以簡化 .gitignore 的复杂度,如果没有 !/path語法的,你就不得不把除了 /2011/11/的文件和目錄都寫一遍。

    範例:老師宣布這次成績的全格人員

    
    1号  合 格
    2号  合 格
    3号  合 格
    4号  合 格
    小明 不合格
    6号  合 格
    7号  合 格
    8号  合 格
    9号  合 格
    。。。
    

    當然也可以這樣

    全部合格 -------> /uploads,
    除了小明 -------> !/uploads/2012/11,全部已经包括小明,但现在把他排除

    回覆
    0
  • 取消回覆