一分钟学会gitignore(附配置规则)

一分钟学会gitignore(附配置规则)gitignore 是一个文本文件 用于告诉 Git 哪些文件或目录应该被忽略 不纳入版本控制 它通常位于项目的根目录中 通过在 gitignore 文件中列出文件或目录的名称 Git 在执行操作时会自动忽略这些文件或目录 如何使用

欢迎大家来到IT世界,在知识的湖畔探索吧!

.gitignore 是一个文本文件,用于告诉 Git 哪些文件或目录应该被忽略,不纳入版本控制。它通常位于项目的根目录中。通过在 .gitignore 文件中列出文件或目录的名称,Git 在执行操作时会自动忽略这些文件或目录。

如何使用 .gitignore

  1. 创建 .gitignore 文件:在项目的根目录下创建一个名为 .gitignore 的文件。
  2. 添加忽略规则:在 .gitignore 文件中,添加需要忽略的文件或目录的路径。例如:
# 忽略 node_modules 目录 node_modules/ # 忽略所有 .log 文件 *.log # 忽略 dist 目录 dist/

欢迎大家来到IT世界,在知识的湖畔探索吧!

  1. 提交 .gitignore 文件:将 .gitignore 文件添加到版本控制中,以便其他开发者在克隆项目时也能使用相同的忽略规则。

常见用法

  • 忽略特定文件类型:使用通配符 * 来忽略特定类型的文件,例如 *.tmp 忽略所有 .tmp 文件。
  • 忽略特定目录:在目录名后加上斜杠 /,例如 build/ 忽略 build 目录。
  • 忽略特定文件:直接写出文件名,例如 secret.txt 忽略 secret.txt 文件。

.gitignore 文件是管理项目中不需要版本控制的文件的一个重要工具,帮助保持代码库的整洁和高效。

常见问题

如果你的 .gitignore 文件中已经添加了 package-lock.json 和 yarn.lock,但它们仍然显示在 Git 的 commit 区域,可能有以下几种原因:

  1. .gitignore 的位置不是根目录: 确保 .gitignore 文件位于项目的根目录,且文件命名准确(确保没有意外的拼写错误或扩展名问题)。
  2. 添加.gitignore配置之前有的文件已经被跟踪: 如果在添加这些规则配置到 .gitignore 之前,文件已经被 Git 开始跟踪,那么 .gitignore 不能控制这些已经被跟踪的文件。你可以通过以下命令停止跟踪这些文件:
欢迎大家来到IT世界,在知识的湖畔探索吧!git rm --cached package-lock.json git rm --cached yarn.lock

这条命令会从 Git 的跟踪中移除这些文件,但不会删除它们在文件系统中的实际存在。移除后,提交更改:

git commit -m "Stop tracking package-lock.json and yarn.lock"

缓存问题: 有时候 Git 可能会出现缓存问题。如果确认 .gitignore 包含这些文件并且文件没有被跟踪,尝试清理 Git 的缓存:

欢迎大家来到IT世界,在知识的湖畔探索吧!git rm -r --cached . git add .
  • 这将移除所有被跟踪的文件缓存重新添加未被跟踪的文件。请注意,这会让你重新添加所有文件,因此在执行之前确保你的工作区干净(没有未暂存的更改)。
  • 有其他 .gitignore覆盖了你的: 确保项目中没有其他的全局的 .gitignore 设置覆盖了你项目中的设置。可以运行以下命令查看全局 .gitignore 的路径:
  • git config --get core.excludesfile
    1. IDE/编辑器影响: 有时候 IDE 或版本控制工具可能会展示不一样的状态,确保你在命令行工具中检查 Git 状态,也就是运行 git status,看看显示的内容是否正常。

    下面是.gitignore一般配置

    欢迎大家来到IT世界,在知识的湖畔探索吧!# Vue、React build output dist/ build/ node_modules/ # Maven target/ !.mvn/wrapper/maven-wrapper.jar .flattened-pom.xml # IntelliJ IDEA .idea/ *.iws *.iml *.ipr # Eclipse .apt_generated .classpath .factorypath .project .settings .springBeans .sts4-cache # NetBeans /nbproject/private/ /nbbuild/ /dist/ /nbdist/ /.nb-gradle/ # Logs logs *.log # OS Specific Files .DS_Store # Editor Directories and Files .vscode/ !.vscode/extensions.json .idea *.suo *.ntvs* *.njsproj *.sln *.sw? # Dependency Directories node_modules dist-ssr # Lock Files package-lock.json yarn.lock # Local Environment Files *.local

    免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/144104.html

    (0)
    上一篇 57分钟前
    下一篇 47分钟前

    相关推荐

    发表回复

    您的邮箱地址不会被公开。 必填项已用 * 标注

    联系我们YX

    mu99908888

    在线咨询: 微信交谈

    邮件:itzsgw@126.com

    工作时间:时刻准备着!

    关注微信