درباره
git-flow مجموعهای از تعمیمهای گیت است که برای عملیات سطح بالا روی مخازن با مدل شاخهبندی وینسنت دریسن است. بیشتر
★ ★ ★
این برگه تقلب استفادههای پایه و تاثیر عملیات git-flow را نشان میدهد.
★ ★ ★
راهنماییهای اولیه
- گیت فلو نکات کمکی برای دستورات و خروجی را بسیار خوب فراهم میکند. مطالب را با دقت مطالعه کنید تا ببنید چه اتفاقی دارد میافتد...
- برای کاربران OSX یا ویندوزSourcetree یک ابزار عالی است که محیط گرافیکی دارد و از git-flow پشتیبانی میکند.
- گیت فلو یک راهکار بر اساس ادغام است و شاخههای feature(ویژگی، قابلیت) را بازسازی نمیکند.
★ ★ ★
نصب و راهاندازی
- شما باید یک نصب فعال از گیت را به عنوان پیشنیاز داشته باشید.
- گیت فلو، روی OSX، لینوکس و ویندوز کار میکند.
★ ★ ★
برای OSX
Homebrew استفاده از ابزار$ brew install git-flow-avhMacports استفاده از ابزار
$ port install git-flow-avh
لینوکس
$ apt-get install git-flow
ویندوز (ابزار Cygwin)
$ wget -q -O - --no-check-certificate https://raw.github.com/petervanderdoes/gitflow-avh/develop/contrib/gitflow-installer.sh install stable | bash
شما دو ابزار wget و util-linux را برای نصب git-flow نیاز دارید.
برای دانستن جزییات بیشتر در مورد نصب گیت فلو، لطفا از ویکی پیج گیت فلو بازدید کنید.
شروع کار
گیت فلو برای اعمال تغییرات روی پروژه شما باید آغاز(مقداردهی) شود.
★ ★ ★
آغاز
استفاده از گیت فلو را با دستور زیر در یک مخزن گیت-که وجود دارد- آغاز کنید.
git flow init
شما باید چندین سوال را برای تعیین نامگذاری برنچهای(شاخههای) خود پاسخ دهید. پیشنهاد میشود از مقادیر پیشفرض برای این کار استفاده کنید.
ویژگیها
- برای عرضه بعدی یک ویژگی جدید توسعه دهید!
- به طور معمول فط در مخازن توسعهدهندگان موجود هستند!
★ ★ ★
آغاز ایجاد یک ویژگی جدید
توسعه ویژگیهای جدید که از شاخه 'develop' آغاز میشوند!
توسعه یک ویژگی جدید را با دستور زیر شروع کنید
git flow feature start MYFEATURE
این دستور بر اساس شاخه 'develop' ویژگی جدیدی را میسازد و به صورت اتوماتیک روی آن سویچ میکند.
اتمام ویژگی
توسعه یک ویژگی را تمام میکند، این دستور نتایج زیر را خواهد داشت:
- MYFEATURE را با شاخه 'develop' ادغام میکند.
- شاخه ویژگی را حذف میکند.
- دوباره روی شاخه 'develop' سویچ میکند.(برمیگردد)
git flow feature finish MYFEATURE
انتشار یک ویژگی
آیا شما در حال توسعه یک ویژگی در یک پروژه مشارکتی هستید؟
ویژگی را روی ریموت سرور منتشر کنید تا برای سایر اعضا قابل استفاده باشد.
git flow feature publish MYFEATURE
دریافت ویژگیهای منتشر شده
قابلیتی را که عضو دیگری منتشر کرده است را دریافت کنید.
git flow feature pull origin MYFEATURE
شما میتونید توسعه یک ویژگی رو از مبدا، با دستور زیر زیر نظر داشته باشید. git flow feature track
MYFEATURE
You can track a feature on origin by using git flow feature track MYFEATURE
ایجاد یک انتشار
- تهیه پشتیبان از انتشار محصول جدید
- اجازه برای رفع باگهای جزیی و آماده کردن متا دیتا برای انتشار
★ ★ ★
شروع یک انتشار
برای استارت یک انتشار، دستور 'git flow release' را بکار ببرید. این دستور یک شاخه انتشار از روی شاخه 'develop' ایجاد میکند.
git flow release start RELEASE [BASE]
شما به صورت اختیاری میتوانید به جای [BASE]
از کد sha-1 یک کامیت(ثبت) خود برای استارت انتشار
از آنجا استفاده کنید. کامیت باید روی برنج 'develop' باشد.
★ ★ ★
بهتر است شاخه انتشار را پس از ایجاد منتشر کنید تا سایر توسعهدهنگان نیز بتوانند روی شاخه انتشار کامیت کنند. مشابه انتشار یک ویژگی با دستور زیر اینکار را انجام دهید:
git flow release publish RELEASE
شما میتونید انتشار ریموت را، با دستور زیر زیر نظر داشته باشید. git flow release track
RELEASE
اتمام یک انتشار
اتمام یک انتشار، بخش بزرگی از برنچینگ و شاخهبندی گیت است، که باعث رخدادهای زیر میشود:
- شاخه انتشار را با شاخه 'master' ادغام میکند
- انتشار را با نامی که روی ان گذاشته شده، برجسب میزند!
- همجنین شاخه انتشار را با شاخه 'develop' ادغام میکند
- شاخه انتشار را حذف میکند
git flow release finish RELEASE
فراموش نکنید که برجسبهای(تگها) خود را پوش کنید! git push --tags
اصلاحات
- اصلاحیهها از ضرورت تغییر بلافاصله در یک نسخه محصول زنده(در دسترس کاربران و عموم) پس از یک وضعیت ناخواسته، حاصل می شود
- ممکن است شاخهبندی آنها از برجسبی که روی شاخه 'master' برای آن نسخه از محصول وجود دارد، باشد.
★ ★ ★
شروع یک اصلاحیه
مانند سایر دستورات گیت فلو، اصلاحها هم با دستور زیر شروع میشوند:
git flow hotfix start VERSION [BASENAME]
آرگومان ورژن برای نام انتشار اصلاح بکار میرود. که پیشنهاد میشود از یک نام پایه برای اینکار استفاده کنید.
اتمام یک اصلاح
با اتمام یک اصلاح، آن شاخه با شاخههای 'develop' و 'master' ادغام میشود. همچنین ادغام با شاخه 'master' با ورژن اصلاح برجسبگذاری میشود.
git flow hotfix finish VERSION
جمعبندی
★ ★ ★
- در این نوشته فقط مهمترین دستورات بررسی شدهاند و همه دستورات تشریح نشدهاند.
- شما هنوز میتوانید از گیت و تمامی دستورات آن، همانطور که میدانید استفاده کنید. گیت فلو فقط یک مجموعه ابزار است.
- ویژگی 'support' هنوز در نسخه بتا قرار دارد، استفاده از آن پیشنهاد نمیشود.
- اگر دوست دارید ترجمه جدیدی ارائه دهید، خوشحال میشوم از آنها استفاده کنم.
★ ★ ★