自动添加.gitignore并挂钩git init

时间:2013-05-20 20:45:36

标签: git

有没有办法告诉git每次在某台机器上运行git init时自动创建/填充.gitignore和.git / hooks文件夹中的某些文件?也许是某个地方的全局配置?

我们需要全面忽略符号链接,以及需要为每个仓库设置的预接收和后接收挂钩,因此这比为每个仓库手动操作更容易。< / p>

感谢。

3 个答案:

答案 0 :(得分:37)

您可以使用git模板目录

来实现此目的
git config --global init.templatedir /path/to/template

然后,您可以将文件添加到文件夹/path/to/template/hooks,它们将自动复制到.git/hooks上的git init文件夹

您可以将所需的.gitignore内容放在文件夹exclude中名为/path/to/template/info的文件中。然后它将有效地成为.gitignore

创建的所有新存储库中的git init文件

如果您使用的是unix,甚至还有一个默认的模板目录/usr/share/git-core/templates

答案 1 :(得分:2)

您的主目录中的

.gitignore_global。如果文件没有创建它。语法与.gitignore文件相同。小心你放在这个档案里的东西!

如果所有用户都希望共享相同的.gitignore文件,则可以在

中创建一个.gitignore文件
/.SHARED_GIT_IGNORE  

然后在每个相应的用户主目录中创建指向它的软链接。

/Users/ALL_USERS/.gitignore_global -> /.SHARED_GIT_IGNORE

答案 2 :(得分:0)

如果我们要讨论的是包含JavaScript并使用npm的存储库,则可以使用husky来设置提交挂钩。

npm install husky --save-dev

// package.json
{
  "husky": {
    "hooks": {
      "pre-commit": "npm test",
      "pre-push": "npm test",
      "...": "..."
    }
  }
}

这不能直接回答原始问题,但可能与许多开发人员有关。