github/gitignore · Swift.gitignore

شرح قالب .gitignore لـ Swift

يشرح سبب تجاهل Swift.gitignore لـ xcuserdata وملفات تحزيم التطبيقات و.build في Swift Package Manager وبناء Carthage ومخرجات fastlane، ومعايير الحكم في CocoaPods وPackage.resolved.

فتح في المولّد فتح مع macOS, Xcode, Objective-C

يستهدف Swift.gitignore المشاريع التي تبني تطبيقات iOS وmacOS في Xcode أو تطوّر حزمًا عبر Swift Package Manager. يتناول الحالة الخاصة بكل مستخدم في Xcode وملفات النشر، ونتائج بناء أدوات إدارة الاعتماديات (SwiftPM وCarthage وCocoaPods)، وتقارير fastlane.

يضم القالب قواعد اختيارية كثيرة معلّقة (في تعليقات). البنود التي يختلف قرار إيداعها باختلاف سياسة الفريق، مثل Pods/ وPackages/ وPackage.resolved و*.xcworkspace، لا تُتجاهَل افتراضيًا ويُترك القرار لك.

شرح القواعد

النمطما الذي يتجاهله ولماذا
xcuserdata/حالة Xcode الخاصة بكل مستخدمالإعدادات التي تختلف من مطور لآخر، مثل اختيار المخطط (scheme) ونقاط التوقف وترتيب النوافذ، تُحفظ في xcuserdata داخل .xcodeproj و.xcworkspace. مشاركتها تجعل كل مطور يستبدل إعدادات الآخر باستمرار.
*.hmapخرائط الترويساتملفات للبحث عن الترويسات ينشئها Xcode أثناء البناء.
*.ipa*.dSYM.zip*.dSYMتحزيم التطبيقأرشيفات التطبيق المعدّة للنشر وملفات الرموز لتحليل الانهيارات. تُنشأ من جديد مع كل بناء وحجمها كبير. تُرفع ملفات dSYM إلى خدمة تقارير الانهيار وتُحفظ هناك.
timeline.xctimelineplayground.xcworkspacePlaygroundالخط الزمني ومساحة العمل الداخلية التي ينشئها Swift Playground أثناء التشغيل.
.build/Swift Package Managerالمجلد الذي يضع فيه swift build نسخ الاعتماديات المسحوبة ونتائج الترجمة. يُعاد إنشاؤه في أي وقت.
Carthage/Build/Carthageالأطر (frameworks) التي بناها Carthage. أما نسخ المصدر المسحوبة (Carthage/Checkouts) فتُركت في تعليق ليكون تجاهلها اختياريًا.
fastlane/report.xmlfastlane/Preview.htmlfastlane/screenshots/**/*.pngfastlane/test_outputfastlaneتقارير تشغيل fastlane ولقطات الشاشة. وكما تذكر تعليقات القالب، يُستحسن إعادة إنشاء اللقطات عند الحاجة.

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

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

Swift.gitignoreالقواعد: 13 سطرًا
# Xcode## gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore## User settingsxcuserdata/## Obj-C/Swift specific*.hmap## App packaging*.ipa*.dSYM.zip*.dSYM## Playgroundstimeline.xctimelineplayground.xcworkspace# Swift Package Manager## Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.# Packages/# Package.pins# Package.resolved# *.xcodeproj## Xcode automatically generates this directory with a .xcworkspacedata file and xcuserdata# hence it is not needed unless you have added a package configuration file to your project# .swiftpm.build/# CocoaPods## We recommend against adding the Pods directory to your .gitignore. However# you should judge for yourself, the pros and cons are mentioned at:# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control## Pods/## Add this line if you want to avoid checking in source code from the Xcode workspace# *.xcworkspace# Carthage## Add this line if you want to avoid checking in source code from Carthage dependencies.# Carthage/CheckoutsCarthage/Build/# fastlane## It is recommended to not store the screenshots in the git repo.# Instead, use fastlane to re-generate the screenshots whenever they are needed.# For more information about the recommended setup visit:# https://docs.fastlane.tools/best-practices/source-control/#source-controlfastlane/report.xmlfastlane/Preview.htmlfastlane/screenshots/**/*.pngfastlane/test_output

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

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

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