خوش آمديد!
16:12 سه شنبه 2 خرداد ماه ، 1391
تبلیغات راست
پکیج آموزش جامع دوره مهندسی شبکه مایکروسافت MCSE
خبر خوان

خبر خوان

دسته بندی مقالات
وب
  مقالات HTML
  مقالات PHP
  مقالات ASP.NET
  مقالات CSS
  مقالات XML
  مقالات JavaScript
  مقالات CMS
  مقالات Dreamweaver
  مقالات ColdFusion
  مقالات IIS
  مقالات Apache
  مقالات AJAX
  مقالات Flex
  مقالات AIR
  مقالات Expression Web
  مقالات SEO
  مقالات عمومی وب
برنامه نویسی
  مقالات C / C++
  مقالات C#
  مقالات VB.NET
  مقالات VB6
  مقالات دلفی
  مقالات VbScript
  مقالات اکشن اسکریپت
  مقالات Python
  مقالات سیلور لایت
  مقالات عمومی برنامه نویسی
سخت افزار
  مقالات CPU
  مقالات RAM
  مقالات دیسک سخت
  مقالات MainBoard
  مقالات کیبورد
  مقالات کارت گرافیک
  مقالات چاپگر
  مقالات عمومی سخت افزار
سیستم عامل
  مقالات ویندوز سون
  مقالات ویندوز ویستا
  مقالات ویندوز XP
  مقالات لینوکس
  مقالات سیستم عامل مک
  مقالات عمومی سیستم عامل
گرافیک دو بعدی
  مقالات فتوشاپ
  مقالات Illustrator
  مقالات Corel
  مقالات Painter
  مقالات QuarkXpress
  مقالات InDesign
  مقالات Fireworks
  مقالات Lightroom
  مقالات Bridge
  مقالات آکروبات
  مقالات فلش
  مقالات Expression Medial
  مقالات Expression Blend
  مقالات عمومی گرافیک دو بعدی
گرافیک سه بعدی و انیمیشن سازی
  مقالات تردی مکس
  مقالات مایا
  مقالات اتوکد
  مقالات عمومی گرافیک سه بعدی
میکس و مونتاژ
  مقالات After Effects
  مقالات پرمیر
  مقالات ادیوس
  مقالات SoundBooth
  مقالات Apple Reason
  مقالات Corel Video Studio
  مقالات Audition
  مقالات Pro Tools
  مقالات FLStudio
  مقالات SoundFordge
  مقالات عمومی ویرایش صوت و فیلم
پایگاه داده
  مقالات SQL Server
  مقالات اکسس
  مقالات MySQL
  مقالات اراکل
  مقالات عمومی پایگاه داده
شبکه
  مقالات اکسچنج سرور
  مقالات SharePoint Server
  مقالات ویندوز سرور 2003
  مقالات ویندوز سرور 2008
  مقالات ISA Server
  مقالات VMware
  مقالات MS Virtualization
  مقالات MCSE
  مقالات MCITP
  مقالات CCNA
  مقالات CCNP
  مقالات CCIE
  مقالات مایکروسافت System Center
  مقالات Wireless
  مقالات Wi-Fi
  مقالات WiMax
  مقالات Citrix
  مقالات DSL
  مقالات BizTalk
  مقالات Commerce Server
  مقالات Forefront
  مقالات Groove
  مقالات Communication Server
  مقالات Project Server
  مقالات Storage Server
  مقالات امنیت شبکه
  مقالات VoIP
  مقالات عمومی شبکه
آفیس و برنامه های تجاری
  مقالات Word
  مقالات Excel
  مقالات Access
  مقالات PowerPoint
  مقالات Visio
  مقالات OneNote
  مقالات Publisher
  مقالات Outlook
  مقالات Amalga
  مقالات Dynamics AX
  مقالات Dynamics CRM
  مقالات Dynamics GP
  مقالات Dynamics NAV
  مقالات Dynamics POS
  مقالات Dynamics RMS
  مقالات Dynamics SL
  مقالات عمومی آفیس و برنامه های تجاری

چگونه از SVN جهت به روز رساني يك سايت استفاده كنيم؟

چگونه از SVN جهت به روز رساني يك سايت استفاده كنيم؟

چگونه از SVN جهت به روز رساني يك سايت استفاده كنيم؟

اين سناريو رو در نظر بگيريد:
وب سرور ما در همان محلي قرار دارد كه SVN Server نصب شده است.
مي‌خواهيم به ازاي هربار Commit تيم به مخزن SVN ما، سايت ارائه شده توسط وب سرور نيز به صورت خودكار به روز شود.
چه بايد كرد؟!

احتمالا خيلي‌ها تصور مي‌كنند كه امكان پذير نيست؛ چون مخزن SVN موجود در سرور، ساختار خودش را دارد و همانند فايل‌هاي يك پروژه معمولي نگهداري نمي‌شود.
براي انجام اينكار چندين روش موجود است، كه تمام آن‌ها به مفهوم hooks در SVN گره خورده است. هرچند hook به معناي قلاب است، اما در اينجا معناي تريگر را دارد. شبيه به تريگرهاي SQL Server : پيش يا پس از انجام كار يا رخداد مشخصي، فلان كار را انجام بده. (براي اطلاعات بيشتر مي‌توانيد به فصل hooks در اين كتابچه مراجعه كنيد: (
+))
در ميان اين قلاب‌هاي موجود، مي‌توان از قلاب post-commit جهت به روز رساني يك سايت پس از هر هماهنگ سازي با مخزن SVN استفاده كرد. پيشنهاد من به تمام كساني كه مي‌خواهند كار با SVN را شروع كنند استفاده از برنامه رايگان
Visual SVN Server است. اين برنامه سازگاري فوق العاده‌اي با محيط ويندوز دارد (از لحاظ تعريف سطح دسترسي‌ها). همچنين تعريف hooks را هم به شدت ساده كرده است. فقط كافي است روي يك مخزن كد تعريف شده در Visual SVN Server كليك راست كرده و در برگه‌ي باز شده، تنظيمات سطوح دسترسي يا تعاريف Hooks را اضافه نمود (در اينجا اعمال سطوح دسترسي روي پوشه‌ها يا روي فايل‌ها نيز به همان شكل با كليك راست و كم و زياد كردن كاربران ميسر است؛ همانند دادن دسترسي بر اساس امكانات NTFS و اكتيودايركتوري).



بنابراين به صورت خلاصه:

  • فرض بر اين است كه مخزن كد SVN ايي را بر روي سرور راه اندازي كرده‌ايد. همچنين پوشه‌اي را كه مي‌خواهيد ريشه سايت باشد، مثلا در مسير دلخواه C:pathwww قرار دارد.
  • براي شروع كار، check out بايد صورت گيرد. يا مي‌توان از TortoiseSVN استفاده كرد يا چون مخزن كد در همان سرور است، دستور زير نيز كار مي‌كند:
 
  1. svn checkout file:///c:/svn/MyRepository/trunk C:pathwww
 
  • سپس يك فايل bat بايد درست كنيد با محتواي زير:
 
  1. svn update file:///c:/svn/MyRepository/trunk C:pathwww
 


اين فايل bat بايد در همان قسمت تعريف post-commit hook استفاده شود.
به اين معنا كه پس از هر commit ، لطفا مسير C:pathwww را بر اساس آخرين به روز رساني‌هاي مخزن كد به صورت خودكار به روز كن. در اين حالت اگر فايلي حذف شده باشد، به صورت خودكار از ريشه سايت شما حذف مي‌شود و اگر فايل يا فايل‌هايي تغيير كرده باشند نيز سريعا به روز رساني آن‌ها انجام خواهد شد.
در روش svn update ، پوشه‌هاي مخفي svn نيز در ريشه سايت حضور خواهند داشت. وجود آن‌ها هم الزامي است زيرا update بر همين اساس كار مي‌كند.

  • اگر مي‌خواهيد اين پوشه‌هاي مخفي وجود نداشته باشند از دستور svn export استفاده كنيد. فقط دقت كنيد كه در اين حالت اگر فايلي از مخزن كد حذف شده باشد، باز هم در ريشه سايت وجود خواهد داشت. راه حلي هم كه توصيه شده، اين است كه در همان bat فايلي كه درست مي‌كنيد ابتدا دستور حذف محتويات پوشه ريشه را صادر كنيد و بعد svn export . البته بديهي است اين روش نسبت به svn update كندتر است و svn update به شدت بهينه و سريع مي‌باشد.
  • يا راه ديگر بجاي حذف كردن پوشه موجود و بعد export به آن، استفاده از برنامه‌هايي مانند Robocopy است كه مي‌توانند عمليات همگام سازي را هم انجام دهند. در اين حالت محتواي فايل bat شما شبيه به دستورات زير خواهد شد:
 
  1. svn checkout file:///c:/svn/MyRepository/trunk C:tempSite1 >> output.log
  2. robocopy C:tempSite1 C:pathwww *.* /S /XF *.cs *.tmp *.sln *.csproj *.webinfo /XD .svn _svn /PURGE >> output.log
     
    به اين معنا كه پس از هر commit‌ به مخزن كد (با توجه به تعريف قلاب ذكر شده)، ابتدا يك svn checkout در يك پوشه موقتي (خارج از ريشه اصلي سايت) انجام گرديده و سپس برنامه robocopy يا موارد مشابه آن وارد عمل شده و تغييرات را با ريشه اصلي هماهنگ مي‌كنند (در اينجا مي‌توان مشخص كرد چه فايل‌هايي با پسوندهاي مشخص، با ريشه سايت هماهنگ نشوند).

    در كل همان روش svn update به نظر سريعتر و مقرون به صرفه‌تر است. اگر از IIS استفاده مي‌كنيد، به صورت پيش فرض كسي نمي‌تواند محتواي پوشه‌اي را با وارد كردن آدرس آن در مرورگر بررسي كند، همچنين IIS فايل‌هايي را كه نمي‌شناسد (پسوند از پيش تعريف شده‌اي در بانك اطلاعاتي آن ندارند)، سرو نمي‌كند و در صورت درخواست آن‌ها، خطاي 404 يا "پيدا نشد" به كاربر نهايي ارائه خواهد شد.

به نقل از dotnettips



ارسال شده در مورخه : دوشنبه، 9 خرداد ماه ، 1390   چاپ مطلب

آموزش مجازی سازی با VMWare


مرتبط با موضوع :

 ويژگيهاي جديد SQL Server 2012  [دوشنبه، 28 فروردين ماه ، 1391]
 روشی ساده برای import داده ها در SQL Server  [يكشنبه، 27 فروردين ماه ، 1391]
 نکات شرینک کردن فایل های دیتابیس در SQL Server  [يكشنبه، 14 اسفند ماه ، 1390]
 ایجاد پکیج های SSIS با SQL Server Management Studio  [شنبه، 10 دي ماه ، 1390]
 نسخه آزمایشی SQL Server 2012 در دسترس علاقه مندان  [چهارشنبه، 23 آذر ماه ، 1390]
 Restore کردن تکه تکه (Piecemeal) دیتابیس با اسکیوال سرور  [شنبه، 31 ارديبهشت ماه ، 1390]
 نگهداری داده های حجیم در MS SQL  [سه شنبه، 6 ارديبهشت ماه ، 1390]
 دنباله اعداد در Denali  [يكشنبه، 4 ارديبهشت ماه ، 1390]
 جستجوي كاراكترهاي ويژه در SQL SERVER  [يكشنبه، 4 ارديبهشت ماه ، 1390]
 آشنایی با انواع Recovery Model در SQL Server  [چهارشنبه، 21 مهر ماه ، 1389]


تبلیغات چپ
پکیج Windows Server 2008 MCITP Enterprise Administ
آخرین مقالات
· ۱۴ تغییراتی احتمالی که در iPhone 5 خواهید دید!
· روشهایی برای افزایش عمر باتری موبایل
· p1000 پرفروش ترین تبلت سامسونگ
· خالی کردن فضای هارد دیسک
· ۷ دلیل برای خرید مطمئن سامسونگ Galaxy Note
· معرفی لایف بوک ها ویژگی های مربوط به آنها
· معرفی ۱۰ فناوری برتر ماه گذشته در عرصه آی تی
· معرفی دلایلی برای خرید گوشی با قابلیت ویندوز فون
· SCX-4729FD چاپگر چندکاره سامسونگ
· تعریف سیستم عامل اندروید و مهمترین ویژگی های آن
· لپ تاپ های Samsung Series 7 Game 3D
· پرطرفدارترین موبایل های هوشمند تا بهار ۲۰۱۲
· Sony Unveila Xperia Sola و صفحه نمایش شناور
· کنترل دستگاه اندرویدی توسط دسکتاپ
· 10 تبلت برتر بهار سال 2012
· Optimus 3D Max دومین گوشی سه بعدی ال جی به عنوان محصولی بی همتا
· G6-1160EE لپ تاپ باقابلیت و پرمخاطب HP
· راه های افزایش امنیت در اینترنت
· آموزش مراحل پاک کردن آرشیو یاهو مسنجر
· مانیتورهایی مخصوص بازی های ویدئویی و گیمرها
· نکات مهم در مورد سرچ گوگل
· معرفی بهترین تبلت های بازار از نظر کیفیت نمایشگر
· معرفی رایانه ها و تبلت های سازگار با ویندوز ۸
· ویژگی های Galaxy note 10.1 شرکت سامسونگ
· مهمترین دلایل خرابی سریع لپ تاپ ها

[ موارد بیشتر در بخش اخبار و تازه ها ]
پربیننده ترین مقالات
· استاندارد های ISO/IEC 17799 و BS7799-2
· توصیه های مهم امنیتی در مورد لینوکس و یونیکس
· گرما در cpuها
· معماری client/Server در اینترنت
· آشنایی با سیستم فایل GNU/Linux
· یک MAC BOOK PRO جدید در بازار ایران
· معرفی دو مدل لپ تاپ با قابلیت سونی سری F
· F137HG/B، لپ تاپ سایز بزرگ سونی در بازار داخلی
· اندر احوالات کرک و کپی رایت
· EE31FX/BJ، لپ تاپ ارزان قیمت سونی در بازار داخلی
· معرفی z216 FX/L از لپ تاپ های سونی
· مدل MD313LL/A ، Macbook ارزان قیمت در بازار داخل
· تاریخچه کامپیوتر
· مشاهده آنلاین سوابق بیمه شدگان
· چگونگی اختصاص دادن یک آدرس IP استاتیک به یک رایانه در شبکه در ویندوز Xp ، Vista یا Seven
· آشنایی با روتر و سوئیچ(router and switch)
· الگوریتم های مرتب سازی آرایه ها
· تاریخچه ی پیدایش زبان های برنامه نویسی شی گرا
· GPS چیست؟
· به روز رسانی ویندوز 7 با نرم افزار Windows Update
· پایگاه داده های سیار Mobile database
· بازیابی رمز عبور در ویندوز 7
· معماری سرویس گرا Service Oriented Architecture چیست؟
· انتقال اطلاعات با Replication در SQL Server
· آموزش نرم افزار Virtual Box

[ موارد بیشتر در بخش اخبار و تازه ها ]
مقالات تصادفی
· الجی لپ تاپ های فوق سبک P220 خود را به بازار عرضه می کند
· نرم‌افزار «هشت پای پیشگو» عرضه شد!
· راهنمای خرید یک لپ تاپ
· کارآفرینی آنلاین
· برخی تنظیمات و کاربردهای ssh در لینوکس
· شبکه اجتماعی سایت تبیان راه اندازی شد
· مرثیه ای بر یک رویا؛ نقدی بر بازی CALL OF DUTY:BLACK Ops
· بررسی تاثیر مقدار حافظه بر عملکرد کارت گرافیک
· خبرهایی از بازی طلوع Metal Gear Solid
· حافظه RAM
· iphone nano به زودی روانه بازار می شود
· سیستم عامل های موبایلی ایمن ترند
· کوچکترین نمایشگر رنگی جهان
· اگرلپ تاپ خیس شد چه کنیم ؟
· کابل های مورد نیاز شما - بخش دوم
· یک گوشی اندرویدی باهوش به همراه کیبرد کامل و ظاهر زیبا HTC Desire Z
· آینده فناوری POE
· مایکروسافت باگ 17 ساله ویندوز را رفع می کند
· حل چهار مشکل پیش پا افتاده ی سیستم (1)
· پسوردهایتان با شما ، همیشه و همه جا با ترکیب Keepass و DropBox
· پشتیبانی ویندوز ۸ از USB3
· آشنایی كامل با DVD
· Call of Duty Modern Warfare 3 تایید شد!!!
· تنظیم Outlook Express برای كار با پست الكترونیكی
· جلوگیری از پیری زود رس باتری لپ تاپ

[ موارد بیشتر در بخش اخبار و تازه ها ]
امتیاز دهی به مطلب
امتیاز متوسط : 0
تعداد آراء: 0

لطفا رای مورد نظرتان را در مورد این مطلب ارائه نمائید :

عالی
خیلی خوب
خوب
متوسط
بد

آموزش طراحی وب با دریم ویور