با عرض سلام و وقت به خیر خدمت کاربران سایت پی وی لرن به ویژه کاربرانی که به سیستم مدیریت محتوای قدرتمند وردپرس علاقمند هستند.
به ” دوره متخصص وردپرس ” خوش آمدید!
در این دوره قرار است توسعه و ارتقاء پلاگین های وردپرس را به صورت جامع و کامل بیاموزیم.
فرقی نمی کند که در شرف نوشتن اولین پلاگین خود هستید و یا این که پنجاهمین پلاگین خود را می نویسید! امیدوارم این دوره برایتان مفید باشد.
در جلسه قبل با برنامه ریزی ، ارسال و حفظ پلاگین ها آشنا شدیم.
در ادامه این سر فصل آشنایی با Subversion در ثبت پلاگین را به علاقمندان این دوره ارائه می نماییم.
SVN یا Subversion یک سیستم کنترل مشابه Git است.
می توان از طریق خط فرمان یا یکی از برنامه های کاربردی GUI بیشماری مانند Tortoise SVN ، SmartSVN و موارد دیگر از آن استفاده کرد.
در ” آشنایی با Subversion در ثبت پلاگین ” چندان به این که SVN چیست پرداخته نمی شود و بیشتر یک آغازگر سریع برای شروع کار با افزونه های WordPress.org است.
لذا اگر سابقه آشنایی با SVN را ندارید بهتر است مروری بر آن داشته باشید.
در ادامه برخی از اصول اولیه در مورد استفاده از subversion را در رابطه با میزبانی WordPress.org توضیح خواهیم داد.
SVN و شاخه پلاگین یک مخزن انتشار هستند.
بر خلاف Git ، نباید مرتکب هر تغییر کوچکی شوید ، زیرا انجام این کار می تواند باعث کاهش عملکردتان شود.
لطفاً فقط تغییرات نهایی را به مخزن SVN خود وارد کنید.
تمام پرونده های شما به صورت متمرکز در مخزن svn در سرورهای WordPress.orgذخیره می شوند.
از آن مخزن ، هر کسی می تواند یک نسخه از پرونده های افزونه شما را بر روی دستگاه محلی خود بررسی کند ، اما ، به عنوان یک نویسنده افزونه ، فقط شما این اختیار را دارید که وارد شوید.
این بدان معنی است که می توانید :
و در هایت آن تغییرات را دوباره به سرور مرکزی بارگذاری کنید.
می شود گفت این روند، روند بررسی است
در طی این روند هم پرونده های موجود در مخزن را به روز می شود و هم اطلاعاتی که در فهرست افزونه WordPress.org قرار دارد؛ نمایش داده می شود.
در صورت بروز مشکل می توان همه تغییرات را بازیابی کرد و به عقب برگرداند و به نسخه های قدیمی تر رجوع نمود.
علاوه بر به خاطر سپردن هر یک از تجدید نظرهای فردی ، می توانید به subversion بگویید که به عنوان یک مرجع آسان ، برچسب های خاصی از مخزن را برچسب گذاری نماید.
تگ ها یا برچسب ها برای برچسب زدن به نسخه های مختلف افزونه شما عالی هستند.
حساب شما برای SVN همان نام کاربری (نه ایمیل) حساب کاربری شما هنگام ارسال افزونه خواهد بود.
این نام همان شناسه کاربری شمااست که شما برای انجمن های وردپرس نیز می توانید از آن استفاده کنید.
حروف بزرگ همواره مهم اند!
بنابراین اگر نام کاربری شما JaneDoe است ، پس باید از حروف J و D استفاده کنید.
اگر نیاز به تنظیم مجدد گذرواژه خود دارید ، به login.wordpress.org بروید
چهار دایرکتوری به طور پیش فرض در تمام مخازن SVN ایجاد شده است.
1 2 3 4 | /assets/ /branches/ /tags/ /trunk/ |
assets
برای تصاویر ، هدر افزونه ها و نمادهای افزونه استفاده کنید.دایرکتوری trunk جایی است که کد افزونه شما باید در آن قرار گیرد.
trunk را می توان جدیدترین و بزرگترین کد در نظر گرفت ، اما trunk لزوما جدیدترین کد پایدار نیست.
Trunk برای نسخه توسعه یافته است.
خوشبختانه کد Trunk کدی است که همیشه کار می کند گرچه گاهاً ممکن است به مشکل بر بخورد.
دلیل بروز مشکلی های کوچک Trunkاین است که Trunk لزوما نسخه “پایدار” نیست.
اما برای افزونه های ساده Trunk می تواند به عنوان نسخه کد کوجو بدک نباشد.
حتی اگر کارهای توسعه خود را در جای دیگر انجام می دهید (مانند یک مخزن git) ، توصیه می کنیم پوشه Trunk را با کد خود به روز کنید.
” آشنایی با Subversion در ثبت پلاگین ” را با مبحث تگ ها ادامه می دهیم.
دایرکتوری تگ ها جایی است که می توانید نسخه های افزونه را در مقطعی خاص از زمان قرار دهید.
معمولاً از شماره های نسخه برای ساب دارکتوری ها استفاده می شود.
بنابراین نسخه ۱٫۰ افزونه در /tags/1.0 خواهد بود ، نسخه ۱٫۱ در /tags/1.1.
همه افزونه ها از تگ ها برای نسخه نویسی استفاده نمی کنند.
با این حال توصیه می شود که در semantic software versioning از آنها استفاده نمایید.
Branches ها یا شاخه ها مکانی است که می توانید از آن برای ذخیره شعب افزونه استفاده کنید.
برای مثال در نسخه هایی که در حال توسعه هستند ، یا کد آزمایشی و غیره را دارند.
WordPress.org به هیچ وجه از دایرکتوری Branches استفاده نمی کند.
بنابرین کاربران نیز فقط باید بر حسب نیاز از آن استفاده نمایند.
Assets جایی است که تصاویر ، تصاویر هدر و نمادهای افزونه شما در آن قرار دارند.
توصیه می شود که فایل های اسکرین شات را در assets/ قرار دهید
” آشنایی با Subversion در ثبت پلاگین ” به پایان رسیده اما در انتها چند نکته را به عنوان نکاتی که رعایت آنها می تواند کمک کننده باشد؛ ارائه می نماییم.
کمی توضیح این مسئله دشوار است.
بر خلاف GitHub ، می توان گفت SVN به معنای یک سیستم رهاسازی است، نه یک سیستم توسعه.
لازم نیست دست به هر تغییر کوچکی بزنید زیرا این کار نهایتاً برای سیستم شما مضر خواهد بود.
هر بار که از کد SVN استفاده می نمایید؛ تمام پرونده های zip تان برای همه نسخه های SVN بازسازی می شود.
به همین دلیل است که گاهی اوقات بروزرسانی افزونه شما تا ۶ ساعت طول می کشد!
اگر لازم است از آن استفاده کنید؛ این استفاده را به حداقل برسانید.
بسیاری از افراد از trunk به عنوان محل نگهداری استفاده می کنند.
در حالی که می توان به سادگی فایل readme.txt را در trunk به روز کرد.
سپس همه چیز را در پوشه های تگ قرار داد.
انجام این کار مقایسه هرگونه تغییر در کد شما را دشوارتر می کند.
در عوض ، صندوق عقب باید آخرین نسخه کد شما را داشته باشد ، حتی اگر آن نسخه بتا باشد.
به جای فشار دادن کد خود به طور مستقیم به یک پوشه برچسب ، باید کد را در trunk به روز کنید.
سپس آن را با نسخه پایدار در readme ، کامل کنید و کد را از trunk به برچسب جدید کپی کنید.
این امر نه تنها باعث می شود هرگونه تغییر را آسان تر کنید بلکه SVN های کوچکتری نیز ایجاد نمایید.
SVN کوچتر نیز به معنای صرفه جویی بیشتر در وقت است و خطاهای احتمالی را کاهش می دهد.
در خصوص پوشه تگ ها زیاد نگران نباشید زیرا وردپرس به اندازه کافی هوشمند است که به پوشه trunk برگردد.
از آنجا که SVN یک مخزن انتشار است ، توصیه می شود نسخه های قدیمی تر کد خود را حذف کنید.
این کار باعث می شود که سریع تر بتوانید نسخه جدید SVN را بررسی نمایید.
علاوه بر این با این کار کد جدید شما نیز سریع تر ساخته می شود.
نگه داشتن آخرین نسخه از هر نسخه اصلی راهی آسان برای پایین نگه داشتن اندازه است.
در اینح جلسه با آشنایی با Subversion در ثبت پلاگین همراه شما علاقمندان این دوره بودیم.
در جلسه بعدی با هشدارها و اخطارهایی که ممکن است هنگام ثبت پلاگین تان با آنها رو به رو شوید را معرفی می کنیم.
با پی وی لرن همراه باشید.