Skip to content

.gitignore相关语法

gitignore
# .gitignore文件使用一些简单的规则来指定哪些文件或目录应该被忽略,不纳入版本控制。
# 以下是一些常用的 `.gitignore` 语法和模式:

1. 通配符:
    - `*`: 匹配任意数量的字符(不包括路径分隔符)。
    - `?`: 匹配任意单个字符。
    - `**`: 匹配任意数量的字符,包括路径分隔符。

2. 目录和文件:
   - `/dirname`: 忽略根目录下的指定目录。
   - `filename`: 忽略根目录下的指定文件。
   - `dirname/`: 忽略根目录下的指定目录及其内容。
   - `dir*/`: 匹配以 "dir" 开头的目录。

3. 注释:
   - `#`: 以 `#` 开头的行将被视为注释。

4. 取反:
   - `!`: 取反,表示不忽略匹配到的文件或目录。

5. 模式匹配:
   - `*.ext`: 匹配任意文件名以 `.ext` 结尾的文件。
   - `/*.ext`: 匹配根目录下的任意文件名以 `.ext` 结尾的文件。
   - `**/*.ext`: 匹配任意目录下的任意文件名以 `.ext` 结尾的文件。

6. 文件夹匹配:
   - `/logs/`: 匹配根目录下的 `logs` 目录及其内容。

7. 忽略所有文件:
   - `*`: 忽略所有文件。
   - `*/`: 忽略所有目录。

8. 忽略特定类型文件:
   - `*.log`: 忽略所有以 `.log` 结尾的文件。

9. 忽略特定文件或目录:
   - `file.txt`: 忽略根目录下的 `file.txt` 文件。
   - `dir/`: 忽略根目录下的 `dir` 目录。

10. 匹配多个模式:
    - 可以在一行中使用多个模式,以空格或制表符分隔

示例:

gitignore
# 忽略所有日志文件
*.log

# 忽略所有临时文件
temp/

# 忽略根目录下的build文件夹
/build

# 忽略根目录下的所有build文件夹
/build*/

# 忽略根目录下的.idea文件夹及其内容
.idea/

# 不忽略根目录下的test.txt文件
!test.txt

这些是常用的 .gitignore 语法和模式,你可以根据项目的需要进行适当的配置。如果需要更详细的信息,可以查阅 Git 官方文档中的 .gitignore 文档