.gitignore和之间有什么区别.gitkeep?它们是不同名称的同一个东西,还是它们都起着不同的作用?我似乎无法找到很多文档.gitkeep.
Woo*_*ble 3179
.gitkeep 没有记录,因为它不是Git的功能.
Git 无法添加一个完全空的目录.想要在Git中跟踪空目录的人已经创建了放置.gitkeep在这些目录中调用的文件的约定.该文件可以被称为任何东西; Git对此名称没有特别的意义.
有一个竞争的惯例是将.gitignore文件添加到空目录以跟踪它们,但有些人认为这令人困惑,因为目标是保留空目录,而不是忽略它们; .gitignore还用于列出Git在查找未跟踪文件时应忽略的文件.
sja*_*jas 298
.gitkeep只是一个占位符.一个虚拟文件,所以git不会忘记该目录,因为git只跟踪文件.
如果你想要一个空目录并确保它对git保持"干净",请在.gitignore其中创建一个包含以下行:
# .gitignore sample
###################
# Ignore all files in this dir...
*
# ... except for this one.
!.gitignore
Run Code Online (Sandbox Code Playgroud)
如果您希望git只能看到一种类型的文件,下面是一个如何过滤所有.txt文件的示例,除了.gitignore和所有文件:
# .gitignore to keep just .txt files
###################################
# Filter everything...
*
# ... except the .gitignore...
!.gitignore
# ... and all text files.
!*.txt
Run Code Online (Sandbox Code Playgroud)
('#'表示评论.)
Jim*_*nro 119
.gitignore
Run Code Online (Sandbox Code Playgroud)
是一个文本文件,包含目录中的文件列表,git将忽略或不在存储库中添加/更新.
.gitkeep
Run Code Online (Sandbox Code Playgroud)
由于git删除或不添加空目录到repo .gitkeep是一种黑客(我不认为它被正式命名为git的一部分)在repo中保留空目录.
只touch /path/to/emptydirectory/.gitkeep需要添加文件即可,git现在可以在存储库中维护此目录.
小智 6
许多人喜欢使用只是.keep因为约定与 git 无关。
文件.gitignore用于告诉 Git 应忽略哪些文件和文件夹。通常,这些文件是构建工件、临时文件或不属于存储库的其他类型的文件。Git 将忽略符合文件中模式的任何目录或文件.gitignore。
例子:
# Ignore .DS_Store files
.DS_Store
# Ignore build artifacts
build/
# Ignore log files
*.log
Run Code Online (Sandbox Code Playgroud)
相反, .gitkeepGit 中使用文件来维护一个目录,否则该目录将为空。默认情况下,Git 不会跟踪空文件夹,因此.gitkeep如果您希望将文件保留在存储库中,则必须将文件添加到该目录。文件名比文件的实际内容更重要。
.gitkeep文件示例
# This file is used to keep the directory empty in Git
Run Code Online (Sandbox Code Playgroud)
总之。该.gitignore命令用于告诉 Git 要忽略哪些文件和文件夹。要维护一个否则为空的 Git 目录,请使用.gitkeep. 它们彼此不同并且具有不同的功能。
| 归档时间: |
|
| 查看次数: |
326797 次 |
| 最近记录: |