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

标签 git version-control gitignore

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

我最初的想法是将 .gitignore 分成两部分,一个项目共享部分和一个个人特定部分,其中项目共享部分被 checkin ,但个人特定部分被 checkin 不是。在 Google 和 StackOverflow 上搜索表明不存在拆分/包含其他文件的机制。

有人有好的选择吗?提前致谢!

最佳答案

全局(跨存储库).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 文件来创建本地的每个存储库规则。这些规则不会提交给存储库,因此不会与其他人共享。

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

关于git - 将 .gitignore 的一部分保留在版本控制下,但将另一部分保留在版本控制之下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28316262/

相关文章:

git - 我的 Gitorious 不创建存储库!

git - 如何提交此符号链接(symbolic link)的内容?

version-control - 最好的三向合并工具是什么?

node.js - 如何列出 curdir 中的文件不被 npm 的 .gitignore 和 .npmignore 忽略

git - 复制没有 .gitignore 的文件?

git - 修复 Git 错误 "error: unable to find"

git - 硬重置后最新的提交消失了

version-control - 从 bitbucket 迁移到 GitLab

javascript - 我可以获取用户脚本的版本并在另一个网页上使用它吗?

android - Gitignore 不会忽略文件夹 android,react native