自学内容网 自学内容网

【Vue3项目实战系列一】—— 配置文件.gitignore说明,被忽略的.gitignore,您知道它的每一行代码是干什么的吗

😉 你好呀,我是爱编程的Sherry,很高兴在这里遇见你!我是一名拥有十多年开发经验的前端工程师。这一路走来,面对困难时也曾感到迷茫,凭借不懈的努力和坚持,重新找到了前进的方向。我的人生格言是——认准方向,坚持不懈,你终将迎来辉煌!欢迎关注我😁,我将在这里分享工作中积累的经验和心得,希望我的分享能够给你带来帮助。
👉 关于【Vue3项目实战系列】专栏,本专栏旨在帮助新人粉丝全面快速的掌握vue3开发技术,在接下来的日子里我带着大家从零开始一个vue3项目,项目包含了框架搭建,用户登录,用户权限,表格增删改查,表单验证,等一套完整的用户管理系统的实践开发,学完可以帮助前端新人至少拥有一年工作经验,本专栏完全免费,欢迎关注并订阅!🎈
🎯如果你有任何困惑或疑问欢迎评论区给我留言哦,我收到后会第一时间为你答疑解惑😉

引言

.gitignore 文件是 Git 版本控制系统中的一个重要组成部分,用于指定哪些文件或目录应该被 Git 忽略,不纳入版本控制。这有助于保持仓库的整洁,避免不必要的文件(如编译输出、临时文件等)混入版本历史中。

基本规则
  • 注释:以 # 开头的行被视为注释。
  • 空行:空白行会被忽略。
  • 绝对路径:从根目录开始的路径(以斜杠 / 开始),表示该路径下的特定文件或目录。
  • 相对路径:不以斜杠 / 开始的路径,表示从任何位置开始匹配。
  • 通配符
    • * 匹配零个或多个任意字符。
    • ? 匹配单个任意字符。
    • [abc] 匹配方括号内的任意一个字符。
    • ** 匹配多级目录,例如 dir/**/file 可以匹配 dir/subdir/file 等。
  • 排除已忽略的文件:如果某个文件已经通过之前的规则被忽略,但你又想将其加入到Git管理中,可以在其名称前加上 ! 来取消忽略。
注意事项
  • .gitignore 文件只能影响尚未被追踪的文件。如果文件已经被 Git 追踪,则更改 .gitignore 不会使其停止被追踪。要停止追踪一个已经被添加到仓库的文件,可以使用 git rm --cached <file> 命令。
  • .gitignore 文件本身应当被提交到版本库中,以便团队成员共享相同的忽略规则。
文件详细讲解
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

node_modules
.DS_Store
dist
dist-ssr
coverage
*.local

/cypress/videos/
/cypress/screenshots/

# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

*.tsbuildinfo

日志文件 (# Logs)
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
  • logs:忽略名为 logs 的目录,通常用于存储应用程序运行时生成的日志文件。
  • *.log:忽略所有以 .log 结尾的文件,适用于任何位置的日志文件。
  • npm-debug.log*yarn-debug.log*yarn-error.log*pnpm-debug.log*lerna-debug.log*:这些规则分别忽略了由 npm、yarn、pnpm 和 lerna 工具生成的调试日志文件。星号(*)表示匹配任意长度的字符,因此可以匹配如 npm-debug.log.1yarn-error.log.gz 等文件。
忽略构建输出和系统文件
node_modules
.DS_Store
dist
dist-ssr
coverage
*.local
  • node_modules:忽略 node_modules 目录,这是存放项目依赖包的地方,通常不需要纳入版本控制,因为可以通过 package.jsonpackage-lock.json 来重新安装这些依赖。
  • .DS_Store:忽略 macOS 系统在文件夹中创建的元数据文件。
  • distdist-ssr:忽略这两个目录,它们通常是 Vue 项目的生产构建输出目录。
  • coverage:忽略代码覆盖率报告目录,通常由测试工具生成。
  • *.local:忽略所有以 .local 结尾的文件,这类文件可能包含本地配置或用户特定的数据。
测试相关 (/cypress/videos//cypress/screenshots/)
/cypress/videos/
/cypress/screenshots/
  • /cypress/videos/:忽略 Cypress 测试工具录制的视频文件所在的目录。
  • /cypress/screenshots/:忽略 Cypress 测试过程中生成的截图文件所在的目录。
编辑器相关的目录和文件 (# Editor directories and files)
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
*.tsbuildinfo
  • .vscode/*:忽略 Visual Studio Code 编辑器创建的所有设置和工作区文件,但排除了 extensions.json 文件(通过 !.vscode/extensions.json 恢复跟踪),这有助于团队成员共享推荐的扩展。
  • .idea:忽略 JetBrains IDE(如 WebStorm、IntelliJ IDEA)创建的项目配置文件。
  • *.suo*.ntvs**.njsproj*.sln:这些规则忽略了与 Visual Studio 开发环境相关的文件。
  • *.sw?:忽略 Vim 或其他编辑器创建的交换文件。
  • *.tsbuildinfo:忽略 TypeScript 构建信息文件,它是由 TypeScript 编译器生成的缓存文件,用于加速增量编译。

原文地址:https://blog.csdn.net/misstianyun/article/details/144304499

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!