What are all available Git special files that can be committed to a repository?

Two examples I can think of are .gitattributes and .gitignore.

Can someone list all of them?

  • Msys Git Merge Tool Command Options Issue
  • Why do I get “error: failed to push some refs” when pushing to Heroku?
  • Opening a file in Vim opens vim diff?
  • File is always modified in Git due to different versions of sass/compass
  • Git repository for a project that has files in unrelated directories
  • configuring user and password with git bash
  • Cannot push -f after rebasing atop of master
  • Git undo last commit
  • Error on branch creation: “warning: refname 'master' is ambiguous.”
  • Remove all commits by author
  • How can I change code within a commit to help find a bug?
  • GIT Bash asking for my user credentials when performing a push using SSH
  • One Solution collect form web for “What are all available Git special files that can be committed to a repository?”

    I grepped the git repository of git itself, and while I don’t think an official list exists anywhere, I did notice that all the ones I know about were mentioned in the git-config manpage (git help config). So with that, I did a search for “file” on that page, and here’s what I found:

    • .gitignore – List of blobs for git to ignore. Affects commands like git add and git clean.
    • .gitattributes – Let’s you define attributes on files (e.g., to change how files look in a diff).
    • .mailmap – Lets you tell git that duplicate names or emails in the history are actually the same person. Affects commmands like git shortlog -ns, or git log --format="%aN <%aE>".
    • .gitmodules – Let’s you define submodules (subdirectories of your git repository which are checkouts of other git repositories).
    • *.keep – Something to do with making git gc ignore packs. I couldn’t find much info on this, so I’m not even sure if it’s a file that you commit to the repository or just something that lives in .git. If someone knows more please comment.

    That’s all I found. I hope I didn’t miss anything.

    Git Baby is a git and github fan, let's start git clone.