close
تبلیغات در اینترنت
چگونه از SVN جهت به روز رساني يك سايت استفاده كنيم؟
مرورگرهای پیشنهادی :
موضوعات
  • پایان نامه و مقاله فنی مهندسی
  • مهندسی برق ، الکترونیک ، مخابرات
  • مهندسی فناوری اطلاعات
  • مهندسی کامپیوتر
  • مهندسی مکانیک
  • مهندسی عمران
  • مهندسی معماری
  • مهندسی ساخت و تولید
  • مهندسی منابع طبیعی
  • مهندسی کشاورزی
  • مهندسی شیلات
  • مهندسی صنایع
  • مهندسی مواد
  • مهندسی نقشه برداری
  • مهندسی تاسیسات
  • مهندسی شیمی
  • مهندسی متالوژی
  • مهندسی نساجی
  • مهندسی معدن
  • مهندسی نفت
  • محیط زیست
  • جوشکاری
  • پایان نامه و مقاله علوم انسانی
  • حقوق
  • اقتصاد
  • مدیریت
  • جغرافیا
  • جهانگردی
  • حسابداری
  • تربیت بدنی
  • ادبیات فارسی
  • علوم سیاسی
  • علوم اجتماعی
  • مدیریت صنعتی
  • مدیریت روابط عمومی
  • احکام و معارف اسلامی
  • روانشناسی و علوم تربیتی
  • گرافیک
  • هنر
  • بیمه
  • تاریخ
  • موسیقی
  • صنایع دستی
  • پایان نامه و مقاله پزشکی
  • علوم آزمایشگاهی
  • بهداشت عمومی
  • طب هسته ای
  • چشم پزشکی
  • جنین شناسی
  • روان پزشکی
  • دندانپزشکی
  • پیراپزشکی
  • دامپزشکی
  • طب سنتی
  • داروسازی
  • پرستاری
  • پزشکی
  • مامایی
  • آناتومی
  • ژنتیک
  • پایان نامه و مقاله علوم پایه
  • زیست شناسی
  • زمین شناسی
  • دندانپزشکی
  • دامپزشکی
  • پزشکی
  • فیزیک
  • پاورپوینت و اسلاید فنی مهندسی
  • پاورپوینت معماری
  • پاورپوینت کامپیوتر و IT
  • نمونه سوالات استخدامی
  • نمونه سوالات استخدامی بانک
  • نمونه سوالات استخدامی آموزش و پرورش
  • نمونه سوالات استخدامی شهرداری
  • نمونه سوالات استخدامی تامین اجتماعی
  • نمونه سوالات استخدامی دستگاه اجرایی
  • نمونه سوالات استخدامی فنی و حرفه ای
  • نمونه سوالات استخدامی وزارت خانه ها
  • نمونه سوالات استخدامی نظامی
  • سایر نمونه سوالات استخدامی
  • جزوات دانشگاهی
  • جزوات دروس مشترک دانشگاهی
  • جزوات مهندسی برق
  • جزوات مهندسی مکانیک
  • جزوات مهندسی عمران
  • جزوات رشته حسابداری
  • جزوات مهندسی فیزیک
  • جزوات مهندسی معماری
  • جزوات مهندسی ریاضی
  • جزوات مهندسی صنایع
  • جزوات مهندسی شیمی
  • جزوات مهندسی کامپیوتر و IT
  • جزوات رشته زمین شناسی
  • جزوات رشته روانشناسی
  • جزوات مهندسی مخابرات
  • جزوات رشته مدیریت
  • جزوات تربیت بدنی
  • جزوات حقوق
  • گزارش کارآموزی فنی مهندسی
  • مهندسی کامپیوتر (سخت افزار - نرم افزار)
  • مهندسی مکانیک
  • مهندسی برق
  • مهندسی شیمی
  • مهندسی فناوری اطلاعات
  • صنایع غذایی
  • حسابداری
  • مدیریت
  • مطالب پربازدید
    مطالب تصادفی
    مطالب پیشین
  • بررسی رابطه تيپ های شخصيتی دبيران دبيرستانهای دخترانه با میزان موفقیت (پنجشنبه 13 اردیبهشت 1397)
  • بررسی پيش تجربی سياهه مشاوره ای لوئيس سوال هاي شماره 3 تا 45 (از مقياس اطمينان اجتماعی) (پنجشنبه 13 اردیبهشت 1397)
  • بررسی مقدماتی شخصيتی كرنل براي سوال 36 و 37 بر روي دانشجويان دانشگاه آزاد اسلامي (پنجشنبه 13 اردیبهشت 1397)
  • مقايسه مشكلات زبان عادی ويژه (چهارشنبه 12 اردیبهشت 1397)
  • مقایسه ویژگی های شخصیتی شخصیت ضد اجتماعی و انحرافات اجتماعی در بین دانشجویان دختر و پسر (جمعه 07 اردیبهشت 1397)
  • بررسی رابطة تك فرزندی با اختلالات رفتاری (چهارشنبه 05 اردیبهشت 1397)
  • بررسی توصيفی موسيقی و موسيقی درمانی بر روی انسان ها (چهارشنبه 05 اردیبهشت 1397)
  • بررسی تأثير ناكامی در ميزان پرخاشگری بين دانش آموزان دختر و پسر مقطع ابتدايی (چهارشنبه 05 اردیبهشت 1397)
  • بررسی ميزان تأثير اردوهای تربيتی ـ آموزشی بر رشد شخصيت دانش آموزان (چهارشنبه 05 اردیبهشت 1397)
  • نياز سنجی كاركنان اطلاعات (چهارشنبه 05 اردیبهشت 1397)
  • مقايسه هوش هيجانی و جرأت ورزی در دانش‌آموزان دختر و پسر نابينا و عادی (چهارشنبه 05 اردیبهشت 1397)
  • مقایسه میزان هیجان خواهی دانشجویان متأهل و مجرد (چهارشنبه 05 اردیبهشت 1397)
  • مددکاری (چهارشنبه 05 اردیبهشت 1397)
  • بررسی علل گرايش جوانان و نوجوانان به قرص های روان گردان (چهارشنبه 05 اردیبهشت 1397)
  • شناسايی نيازهای آموزشی و ترويجی توتون کاران (چهارشنبه 05 اردیبهشت 1397)
  • اين سناريو رو در نظر بگيريد:
    وب سرور ما در همان محلي قرار دارد كه 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



    کسب درآمد با فروش فایل های سایت ما

    درباره :
    برچسب ها :چگونه از SVN جهت به روز رساني يك سايت استفاده كنيم؟ ,
    بازدید : 1183 تاریخ : نویسنده : بهرام محمدپور | نظرات ()
    ارسال نظر برای این مطلب

    نام
    ایمیل (منتشر نمی‌شود) (لازم)
    وبسایت
    :):(;):D;)):X:?:P:*=((:O@};-:B/:):S
    نظر خصوصی
    مشخصات شما ذخیره شود ؟[حذف مشخصات] [شکلک ها]
    کد امنیتی
    آمار سایت
  • آمار مطالب
  • کل مطالب : 4311
  • کل نظرات : 17
  • آمار کاربران
  • افراد آنلاین : 10
  • آمار بازدید
  • بازدید امروز : 19,297
  • باردید دیروز : 7,433
  • گوگل امروز : 39
  • گوگل دیروز : 42
  • بازدید هفته : 56,669
  • بازدید ماه : 134,700
  • بازدید سال : 822,620
  • بازدید کلی : 6,676,346
  • نظرسنجی
    چه مطالبی در سایت قرار دهیم؟





    کدهای اختصاصی