Skip to main content
Languages

C++ .gitignore

.gitignore for languages projects

View on GitHub

.gitignore Content

# ============================================================================
# Created by https://gitignores.com/
# LANGUAGE-SPECIFIC TEMPLATE for C++
# Website: https://isocpp.org/
# Repository: https://github.com/isocpp/CppCoreGuidelines
# ============================================================================

# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# TEMPLATE OVERVIEW & USAGE NOTES
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# • TEMPLATE TYPE: LANGUAGE-SPECIFIC TEMPLATE
# • PURPOSE: C++ compilation patterns for object files, executables, and build directories
# • DESIGN PHILOSOPHY: Modular design for combination with common templates
# • COMBINATION GUIDANCE: Combine with common templates for comprehensive coverage
# • SECURITY CONSIDERATIONS: Does not include security patterns - combine with common/security.gitignore
# • BEST PRACTICES: Combine with common/security.gitignore for protection, test with your specific build tools, review for project-specific exclusions
# • OFFICIAL SOURCES: Cpp Official language documentation, package manager guides, and community best practices

# ••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
# DEPENDENCY MANAGEMENT & PACKAGE CACHE
# ••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••

cmake-build-*/

# ••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
# LANGUAGE-SPECIFIC PATTERNS
# ••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••

*.gcda
*.gch
*.gcno
*.gcov
*.njsproj
*.pch
*.profraw
*.qm
*.qm.bak
*.qmlc
*.sln
*.ui.bak
*.vcxproj
*.vcxproj.filters
*.vcxproj.user
.catkin_tools/
.catkin_workspace/
.ros/
.rosinstall
catkin_ws/
cmake_install.cmake
CMakeCache.txt
CMakeFiles/
compile_commands.json
devel/
doxygen/
industrial_ci/
install/
install_manifest.txt
log/
Makefile
Makefile*
moc_*.cpp
moc_*.h
qrc_*.cpp
ui_*.h
x64/
x86/

# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# TEMPLATE CUSTOMIZATION & BEST PRACTICES
# ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# 1. REVIEW: Examine all patterns before use
# 2. CUSTOMIZE: Adapt to your project's specific structure
# 3. TEST: Use `git check-ignore` to verify patterns work correctly
# 4. SECURE: Always protect sensitive data and credentials
# 5. UPDATE: Review periodically as technology evolves

# For comprehensive coverage, consider combining with:
#   - Framework template if applicable (frameworks/*.gitignore)
#   - Common security patterns (common/security.gitignore) - CRITICAL for protecting sensitive data
#   - Common cache patterns (common/cache.gitignore)
#   - Common build patterns (common/build.gitignore)
#   - Common logs patterns (common/logs.gitignore)
#   - IDE template for your editor (ides/*.gitignore)
#   - OS template for your system (os/*.gitignore)

# EXAMPLE COMBINATION FOR C++:
# cat languages/cpp.gitignore \
#     common/security.gitignore \
#     common/cache.gitignore \
#     common/build.gitignore \
#     common/logs.gitignore \
#     ides/visual-studio-code.gitignore \
#     os/macos.gitignore \
#     os/windows.gitignore > .gitignore

Note: This file is fetched from GitHub and cached for 7 days.