Git 中的 gitkeep 和 gitignore

Abdul Jabbar 2023年1月30日 2022年4月22日
Git
  1. Git 中 .gitkeep.gitignore 的区别
  2. 在 Git 中使用 gitkeep 文件提交空文件夹
Git 中的 gitkeep 和 gitignore

Git 用于团队间源代码的管理。在我们进入这个话题之前,我们必须知道 Git 没有跟踪空目录的能力。

如果有一个空目录,Git 在任何情况下都会忽略它。这是我们想要在 Git 中使用的功能。

一旦我们在目录中插入文件,Git 就会开始在仓库中跟踪该目录。该文件可以是任何内容,或者我们可以说该文件包含与团队业务相关的任何内容。

一个空文件称为 .gitkeep 文件,Git 用户使用它来创建一个保存另一个空项目目录的 Git 仓库。没有文件的空目录不会提交到 Git 远程仓库。

但是,我们可以说目录中的 .gitkeep 文件允许 Git 维护仓库中的目录。

Git 中 .gitkeep.gitignore 的区别

.gitkeep 是一个文件扩展名,它不是官方 Git 标准的一部分,但已由一些 Git 客户端通过约定方法引入。

这个扩展名是当之无愧的 .gitkeep,因为它与 Git 中的 .gitignore 约定相反。它是 Git 的官方文件扩展名,用于指导 Git 在执行或推送代码文件到远程仓库时忽略哪些文件。

.gitignore 文件用于列出我们希望在搜索未跟踪文件时被 git 忽略的文件。可以解释为,它将帮助我们在 Git 中保留空文件,并在它在仓库中搜索未跟踪的文件时忽略它们。

Git 不允许在分支中存储空目录。因此,如果我们需要跟踪一个空目录进行推送,我们可以通过在文件夹中创建一个 .gitkeep 文件来完成它,其他开发人员可以在团队中轻松理解该文件。

在该文件夹中添加文件将允许我们提交目录结构并将其推送到远程仓库。如果一个团队正在预定义一个项目,他们需要这个文件夹,但很明显那里还没有文件。

我们可以将其标记为任何名称; .gitkeep.gitkeep 仅用作约定。

在 Git 中使用 gitkeep 文件提交空文件夹

为了让 Git 将空目录推送到远程仓库,我们将按照以下步骤使用 .gitkeep 约定。

  • 在命令提示符下使用 mkdir 命令创建一个空文件夹。
  • 使用命令提示符中的 cd 命令移动到空目录。
  • 我们将在命令提示符下使用 touch .gitkeep 命令创建 .gitkeep 文件。
  • 我们将使用 git add . 更新 Git 索引。
  • 之后,使用 Git 命令执行 git commit
  • 最后,我们会将带有空 Git 目录的提交推送到远程仓库。
$ mkdir empty-folder
$ cd empty-folder
$ touch .gitkeep
$ git add .
$ git commit -m "How to Commit empty folder in Git with gitkeep file."
$ git push origin
Author: Abdul Jabbar
Abdul Jabbar avatar Abdul Jabbar avatar

Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.

LinkedIn