Qt 的 .gitignore
适用于 Qt 的 40 条忽略规则,可直接复制到您的仓库。
跨平台应用框架
Qt 的完整 .gitignore
# 由 LFGitignore - https://lfgitignore.com 生成
# 创建:2026-10-31 22:58:46 UTC
# 技术:Qt
### Qt ###
*.slo
*.lo
# 目标文件
*.o
# 静态库
*.a
*.la
*.lai
# 共享对象
*.so
# 版本化共享对象
*.so.*
# 动态链接库
*.dll
# macOS动态库
*.dylib
object_script.*.Release
object_script.*.Debug
*_plugin_import.cpp
/.qmake.cache
/.qmake.stash
*.pro.user
*.pro.user.*
*.qbs.user
*.qbs.user.*
*.moc
moc_*.cpp
moc_*.h
qrc_*.cpp
ui_*.h
*.qmlc
*.jsc
Makefile*
*build-*
*.qm
# 构建输出目录
build/
*.prl
target_wrapper.*
*.autosave
*.qmlls.ini
*.qmlproject.user
*.qmlproject.user.*
CMakeLists.txt.user*
# 编译数据库
compile_commands.json
*creator.user*
*_qmlcache.qrc
这些 Qt 规则实际上忽略了什么
以下列出了每个忽略模式及其加入 .gitignore 的原因。
C++ 对象和库
| 模式 |
忽略的内容 |
*.slo |
C++ 对象和库 |
*.lo |
C++ 对象和库 |
*.o |
目标文件 |
*.a |
静态库 |
*.la |
C++ 对象和库 |
*.lai |
C++ 对象和库 |
*.so |
共享对象 |
*.so.* |
版本化共享对象 |
*.dll |
动态链接库 |
*.dylib |
macOS动态库 |
Qt-es
| 模式 |
忽略的内容 |
object_script.*.Release |
Qt-es |
object_script.*.Debug |
Qt-es |
*_plugin_import.cpp |
Qt-es |
/.qmake.cache |
Qt-es |
/.qmake.stash |
Qt-es |
*.pro.user |
Qt-es |
*.pro.user.* |
Qt-es |
*.qbs.user |
Qt-es |
*.qbs.user.* |
Qt-es |
*.moc |
Qt-es |
moc_*.cpp |
Qt-es |
moc_*.h |
Qt-es |
qrc_*.cpp |
Qt-es |
ui_*.h |
Qt-es |
*.qmlc |
Qt-es |
*.jsc |
Qt-es |
Makefile* |
Qt-es |
*build-* |
Qt-es |
*.qm |
Qt-es |
build/ |
构建输出目录 |
*.prl |
Qt-es |
*.qmlls.ini |
Qt-es |
Qt 单元测试
| 模式 |
忽略的内容 |
target_wrapper.* |
Qt 单元测试 |
QtCreator
| 模式 |
忽略的内容 |
*.autosave |
QtCreator |
QtCreator Qml
| 模式 |
忽略的内容 |
*.qmlproject.user |
QtCreator Qml |
*.qmlproject.user.* |
QtCreator Qml |
QtCreator CMake
| 模式 |
忽略的内容 |
CMakeLists.txt.user* |
QtCreator CMake |
QtCreator 4.8<编译数据库
| 模式 |
忽略的内容 |
compile_commands.json |
编译数据库 |
用于导入项目的 QtCreator 本地计算机特定文件
| 模式 |
忽略的内容 |
*creator.user* |
用于导入项目的 QtCreator 本地计算机特定文件 |
*_qmlcache.qrc |
用于导入项目的 QtCreator 本地计算机特定文件 |
如何将此 .gitignore 用于 Qt
- 复制上面的Qt规则,或者直接下载文件。
- 在 Git 仓库根目录创建名为 .gitignore 的文件,并将规则粘贴进去。
- 如果其中一些文件已被跟踪,请运行 git rm -r --cached . 然后再次提交 - Git 仅将忽略规则应用于未跟踪的文件。
- 提交 .gitignore 以便团队中的每个人都共享相同的规则。