zoukankan      html  css  js  c++  java
  • What are the differences between .gitignore and .gitkeep?

    What are the differences between .gitignore and .gitkeep?

    What are the differences between .gitignore and .gitkeep? Are they the same thing with a different name, or do they both serve a different function?

    I don't seem to be able to find much documentation on .gitkeep.

    回答1

    .gitkeep isn’t documented, because it’s not a feature of Git.

    Git cannot add a completely empty directory. People who want to track empty directories in Git have created the convention of putting files called .gitkeep in these directories. The file could be called anything; Git assigns no special significance to this name.

    There is a competing convention of adding a .gitignore file to the empty directories to get them tracked, but some people see this as confusing since the goal is to keep the empty directories, not ignore them; .gitignore is also used to list files that should be ignored by Git when looking for untracked files.

    Wouldn't it be a better solution to put a README file in the otherwise empty subdirectory that contains a bit of information about what that subdirectory is going to be used for? It seems confusing to have a file called .gitkeep that is not actually part of git. – tamouse Jul 14 '12 at 21:45
    @tamouse many times, the path of the empty directory (e.g. names of the folders) is sufficient to express it's purpose (examples: templates/cache, upload/thumbs etc). In these cases putting a readme into each of these feels redundant. – Halil Özgür Jan 31 '13 at 8:33

    回答2

    .gitignore
    

    is a text file comprising a list of files in your directory that git will ignore or not add/update in the repository.

    .gitkeep
    

    Since Git removes or doesn't add empty directories to a repository, .gitkeep is sort of a hack (I don't think it's officially named as a part of Git) to keep empty directories in the repository.

    Just do a touch /path/to/emptydirectory/.gitkeep to add the file, and Git will now be able to maintain this directory in the repository.

  • 相关阅读:
    【模板】辗转相除法
    【模板】冰茶姬(大概是全的?)
    【模板】快速幂
    【模板】线段树-区间修改
    【模板】线段树-单点修改,区间查询
    【模板】dijkstra与floyd
    【模板】SPFA(不完全详解)
    【济南集训】随机分数
    P3205 [HNOI2010]合唱队
    最大子列2
  • 原文地址:https://www.cnblogs.com/chucklu/p/15007799.html
Copyright © 2011-2022 走看看