将 .gitignore 的一部分保留在版本控制下,但将另一部分保留在版本控制之下

Keep part of .gitignore under version control but another part out

我有一个 .gitignore,我希望某些部分应该在整个项目中共享,但其他部分应该是特定于个人的。我怎样才能达到这个或类似的效果?

我最初的想法是将 .gitignore 分成两部分,项目共享部分和个人特定部分,其中项目共享部分已签入,但个人特定部分未签入。在 Google 和 Whosebug 上搜索表明不存在 splitting/including-other-file 机制。

谁有好的选择?提前致谢!

全局(跨存储库).gitignore 设置

您可以通过 core.excludesfile 设置对所有 Git 存储库有效的全局 .gitignore 文件。以下代码片段演示了此设置的设置。

  • 在你的用户目录中创建一个 ~/.gitignore 光盘〜/ 触摸 .gitignore

-- 排除 bin 和 .metadata 目录

echo "bin" >> .gitignore
echo ".metadata" >> .gitignore
echo "*~" >> .gitignore
echo "target/" >> .gitignore
# for Mac
echo ".DS_Store" >> .gitignore
echo "._*" >> .gitignore

-- 配置Git使用这个文件作为全局.gitignore

git config --global core.excludesfile ~/.gitignore

全局 .gitignore 文件仅在本地可用。

本地每个存储库忽略规则

您还可以通过编辑存储库中的 .git/info/exclude 文件来为每个存储库创建本地规则。这些规则未与存储库一起提交,因此不会与其他人共享。

例如,这允许您排除本地生成的文件