github/gitignore · C++.gitignore

شرح قالب .gitignore لـ C++

يشرح سبب تجاهل C++.gitignore لملفات الكائنات والمكتبات والملفات التنفيذية وشجرة بناء CMake وcompile_commands.json ومجلد تثبيت vcpkg، وفخ قاعدة Makefile.

فتح في المولّد فتح مع C, JetBrains, VisualStudioCode, VisualStudio

يضيف C++.gitignore إلى قواعد مخرجات الترجمة المشابهة لقالب C شجرةَ بناء CMake ونتائج CTest ومجلد التثبيت في وضع البيان (manifest) لـ vcpkg. ولأن قالب Fortran في مستودع القوالب يشير إلى هذا الملف كما هو، فإنه يتضمن أيضًا قواعد ملفات وحدات Fortran (.mod و.smod).

أكثر سطر يستدعي الحذر هو Makefile. القاعدة مقصود بها حجب ملفات Makefile التي ينشئها CMake، لكن في المشاريع التي تُبنى بملف Makefile مكتوب يدويًا سيُتجاهَل ذلك الملف أيضًا.

شرح القواعد

النمطما الذي يتجاهله ولماذا
*.o*.obj*.slo*.lo*.d*.gch*.pchملفات الكائنات وذاكرة الترويساتنتائج ترجمة كل وحدة ترجمة، وملفات الاعتماديات، والترويسات المترجمة مسبقًا. كلها يُعاد إنشاؤها من الشيفرة المصدرية.
*.so*.dylib*.dll*.so.**.a*.lib*.lai*.la*.exe*.out*.appالمكتبات والملفات التنفيذيةنواتج الربط. تُنشأ بشكل مختلف على كل منصة، لذا توزَّع عبر الإصدارات لا عبر المستودع.
build/Build/build-*/CMakeFiles/CMakeCache.txtcmake_install.cmakeinstall_manifest.txtشجرة بناء CMakeالذاكرة المؤقتة والملفات المولَّدة التي ينشئها CMake في مرحلة التهيئة. يُخزَّن في CMakeCache.txt مسار المترجم على حاسوبك، فلا فائدة منه لغيرك.
Makefileملفات Makefile المولَّدةيحجب ملفات Makefile التي ينشئها مولّد Unix Makefiles في CMake داخل شجرة المصدر. ولأنه بلا شرطة مائلة، يُتجاهَل Makefile على أي عمق.
compile_commands.jsonvcpkg_installed/Testing/.cache/مخرجات الأدواتقاعدة بيانات الترجمة التي يقرؤها clangd وغيره، والحزم التي ثبّتها vcpkg، ونتائج CTest، وذاكرة فهرسة clangd. كلها تختلف باختلاف البيئة المحلية.
*.pdb*.ilk*.dwo*.tmp*.log*.bak*.swpمعلومات التصحيح والملفات المؤقتةرموز التصحيح، وملفات الربط التزايدي، والملفات المؤقتة والاحتياطية للمحررات.
*.mod*.smodوحدات Fortranملفات واجهات الوحدات التي ينشئها مترجم Fortran. لا أثر لها في مشاريع C++ الخالصة.

ملاحظات عملية

القالب الأصلي

C++.gitignoreالقواعد: 39 سطرًا
# Prerequisites*.d# Compiled Object files*.slo*.lo*.o*.obj# Precompiled Headers*.gch*.pch# Linker files*.ilk# Debugger Files*.pdb# Compiled Dynamic libraries*.so*.dylib*.dll*.so.*# Fortran module files*.mod*.smod# Compiled Static libraries*.lai*.la*.a*.lib# Executables*.exe*.out*.app# Build directoriesbuild/Build/build-*/# CMake generated filesCMakeFiles/CMakeCache.txtcmake_install.cmakeMakefileinstall_manifest.txtcompile_commands.json# Temporary files*.tmp*.log*.bak*.swp# vcpkgvcpkg_installed/# debug information files*.dwo# test output & cacheTesting/.cache/

مصدر القوالب: github/gitignore/C++.gitignore @356fd7b (2026-09-11) · CC0-1.0

قوالب تُستخدم معه

شروح قوالب أخرى