Xcodeproj هي مكتبة مكتوبة في Swift لتحليل المشاريع Xcode والعمل مع Xcode. إنه مستوحى بشدة من Cocoapods Xcodeproj و Xcode.
| مشروع | مستودع |
|---|---|
| projlint | github.com/jamitlabs/projlint |
| القواعد _xcodeproj | github.com/buildbuddy-io/rules_xcodeproj |
| الرجبي | github.com/swiftyfinch/rugby |
| مصدر | github.com/krzysztofzablocki/Sourcery |
| سويست | github.com/tuist/tuist |
| Xcodegen | github.com/yonaskolb/xcodegen |
| XSPM | gitlab.com/pyroh/xspm |
| بيان الخصوصية | github.com/stelabouras/privacy-manifest |
إذا كنت تستفيد أيضًا من Xcodeproj في مشروعك ، فلا تتردد في فتح العلاقات العامة لإدراجها في القائمة أعلاه.
أضف التبعية في ملف Package.swift الخاص بك:
let package = Package (
name : " myproject " ,
dependencies : [
. package ( url : " https://github.com/tuist/XcodeProj.git " , . upToNextMajor ( from : " 8.12.0 " ) ) ,
] ,
targets : [
. target (
name : " myproject " ,
dependencies : [ " XcodeProj " ] ) ,
]
) باستخدام swift-sh يمكنك أتمتة مهام المشروع باستخدام البرامج النصية ، على سبيل المثال ، يمكننا إنشاء برنامج نصي يحتفظ بمفتاح إصدار المشروع بمزامنة مع علامة GIT الحالية التي تمثل إصدار المشروع:
#!/usr/bin/swift sh
import Foundation
import XcodeProj // @tuist ~> 8.8.0
import PathKit
guard CommandLine . arguments . count == 3 else {
let arg0 = Path ( CommandLine . arguments [ 0 ] ) . lastComponent
fputs ( " usage: ( arg0 ) <project> <new-version> n " , stderr )
exit ( 1 )
}
let projectPath = Path ( CommandLine . arguments [ 1 ] )
let newVersion = CommandLine . arguments [ 2 ]
let xcodeproj = try XcodeProj ( path : projectPath )
let key = " CURRENT_PROJECT_VERSION "
for conf in xcodeproj . pbxproj . buildConfigurations where conf . buildSettings [ key ] != nil {
conf . buildSettings [ key ] = newVersion
}
try xcodeproj . write ( path : projectPath ) يمكنك بعد ذلك تخزين هذا في المستودع الخاص بك ، على سبيل المثال في scripts/set-project-version ، ثم تشغيله:
$ scripts/set-project-version ./App.xcodeproj 1.2.3
$ git add App.xcodeproj
$ git commit -m " Bump version "
$ git tag 1.2.3 يمكن أن يتضمن التكيف المستقبلي بسهولة تحديد الإصدار وتصويره تلقائيًا. إذا كان الأمر كذلك ، فإننا نوصي باستخدام مكتبة توفر كائن Version .
[email protected]:tuist/xcodeproj.git .Package.swift مع Xcode. يتم إصدار Xcodeproj تحت رخصة معهد ماساتشوستس للتكنولوجيا. انظر الترخيص للحصول على التفاصيل.
شكراً لهؤلاء الأشخاص الرائعين (مفتاح الرموز التعبيرية):
جوزيف كوليتشيو ؟ | Deatondg ؟ | دان فليمنج | Sascha Schwabbauer ؟ | مارسين إيوانيكي ؟ | آدم خازي ؟ | إليوت ويليامز |
Muukii ؟ | يوا أوكا | كيث سمايلي ؟ | إيان ليتش | دانييل سوبوتين | فلورنتين بيكيير | فاديم سال ؟ |
فريدي (يوكي آكي) | كريستوفر جاكسون | جيك بيركت | جيك آدمز | ماتسوجي | بوجدان بيلوغوروف | تشاك جريندل |
مايكل مكجوير | c- 凡 | ماكسويل إليوت | برنتلي جونز | فريق | يوهانس إيبيلنج | Baegteun |
أليكس كوفاك | كريستوفر وينتركفيست | تيموثي كوستا | ماري | MD. إبراهيم حسن | tatagrigory | رسلان أليكهاموف |
Ladislas de telli | مات ماسكوت | арте воик | جايون يون | مايك جراسمينيكو | Filip Racki | كلفن هارون |
جورج نافارو | الحد الأقصى |
يتبع هذا المشروع مواصفات جميع المساهمين. مساهمات من أي نوع ترحيب!