(ডিস) 'ড্রশ আরসিএনসি' বনাম 'গিট' ব্যবহার করে ডেভ-> প্রোডাকশন মঞ্চ করার সুবিধা?


9

আমি উন্নয়ন কাজের জন্য গিটার নিয়ন্ত্রণে একটি দ্রুপাল সাইট স্থাপন করেছি।

এটি একটি মাস্টারে প্যারেন্টেড, খালি জিআইটি রেপো এবং আমার বিভিন্ন প্রকল্প-কাজের গিট ক্লোনগুলিতে পরিবর্তনগুলি করা হয় এবং মাস্টারের কাছে ফিরে আসে, একটি আপডেট-পরবর্তী হুক তাত্ক্ষণিকভাবে একটি একক লাইভ স্টেজিং ওয়েবসাইটে পরিবর্তনগুলি ধাক্কা দেয় (http: / /staging.loc।)। বিশেষ কিছু নয়, প্রত্যাশার মতো কাজ করে।

আমি "@STAGING" সাইটটি ড্রশ-অ্যালাইজডও করেছি। উপলক্ষে আমি স্টেজিং সাইট থেকে একটি প্রোডাকশন সার্ভারে আমার পরিবর্তনগুলি প্রচার করতে চাই।

অপেক্ষাকৃত দুটি সহজ পদ্ধতি মাথায় আসে:

(1) এমন এক পর্যায়ে যখন স্টেজিং সাইটটি স্থিতিশীল প্রদর্শিত হয়, তখন মাস্টার রেপো থেকে গিট চেকআউট হিসাবে প্রোডাকশন সাইটটি তৈরি করুন,

(2) ব্যবহার drush rsync+ + drush sql-syncউপস্থাপনকারী সাইট থেকে উৎপাদন সাইট রয়েছে।

দু'জনেই কাজ করা যায়। (২) আরও দ্রুপালকেন্দ্রিক / প্রকৃতির দ্বারা সচেতন বলে মনে হওয়া ব্যতীত - ড্রশ হ'ল, একটি দ্রুপাল-নির্দিষ্ট সরঞ্জামের সেট - দুটি পদ্ধতির আপেক্ষিক গুণাবলী কী?

(1) ওভার (2) ওভারে আমার কোন বিশেষ কারণ বিবেচনা করা উচিত?

উভয় ক্ষেত্রেই "সবকিছু" সংশোধন নিয়ন্ত্রণের কমপক্ষে একটি ইভেন্টের অধীনে ...

উত্তর:


3

আমি উভয় কৌশল ব্যবহার করেছি। উভয়ই গ্যারান্টি হিসাবে ব্যবহার করা যেতে পারে যে আপনি @ স্টেজে যে ফাইলগুলি পরীক্ষা করেন তা @ লাইভে শেষ হয়। আরএসআইএনসিটির সুবিধা হ'ল আপনি নিজের প্রোডাকশন সার্ভারে অতিরিক্ত ফাইল (যেমন ".git" এবং সম্পর্কিত) দিয়ে শেষ করবেন না। আমি কোনও ভিপিএসে আরএসএনসি করতে চাই এবং আমার নিজের একটি বাক্সে গিট ব্যবহার করুন (যেমন ইন্ট্রনেট সাইট)।


বিন্দু জন্য ধন্যবাদ। আমি কেবল বাদ দেওয়ার বিকল্পগুলি দেখছিলাম। এটি জিনিস পরিষ্কার রাখতে সহায়তা করে। আইইউক, "rsync' => array ('exclude-paths' => '.git:.DS_Store:.gitignore:.gitmodules:',".rc ফাইলটিতে কী বাদ দিতে হবে তা সুনির্দিষ্ট করে জানা দরকার , যদিও উত্স এবং টার্গেট ওরফে দুটি নির্দিষ্ট ক্ষেত্রে বা কেবল একটি বা অন্য একটিতে আমার এটি প্রয়োজন কিনা তা এখনও নিশ্চিত নই।

.git ডিফল্টরূপে উপেক্ষা করা উচিত। 'ড্রশ --simulate rsync [অপশন] @ এ @ বি' চালান ঠিক যেটি ড্রশ চালাবেন সেই সঠিক rsync কমান্ডটি দেখতে। আপনি .git এবং অন্যান্য ভিসি সম্পর্কিত ফাইল অন্তর্ভুক্ত করতে ড্রাশ আরএসসিএন চাইলে --incolve-vcs ব্যবহার করুন।
গ্রেগ_এন্ডারসন

আমার আরও বিস্তারিত পড়তে হবে; আমি বুঝতে পারি নি .গিট বাদ ছিল। অনুকরণের ইঙ্গিতটির জন্যও ধন্যবাদ। পুনরায়: ওপি, আমি মনে করি যে এটি 'ড্রাশ আরএসসিএনসি'র সাথে থাকব কারণ এটি ড্রুপাল ও কাজের জন্য একটি মোতায়েনের পদ্ধতি হিসাবে নকশাকৃত। গিট অবশ্যই কাজ করতে পারে তবে আইভ এখন যথেষ্ট মন্তব্য পেয়েছে যে এটি মোতায়েনের জন্য ডিজাইন করা হয়েছে ...

1

ড্রাশ আরএসসিএনসি ব্যবহার করে সমস্যাটি হ'ল যদি আপনার একাধিক লোক থাকে তবে সার্ভারে পরিবর্তনগুলি চাপ দিচ্ছে।

আপনার উদাহরণটি কেবলমাত্র একজনকে দেখায় যে পরিবর্তনগুলি চাপছে।

আপনার যদি বিকাশকারী A থাকে তার পরিবর্তনগুলি ঠেলে এবং তার পরে বিকাশকারী বি তার পরিবর্তনগুলিকে চাপ দিচ্ছেন আপনি গিটকে দ্বন্দ্বগুলি সরিয়ে দিতে চান, বা বিকাশকারী বি দ্বন্দ্বগুলি আপ করতে চান।


1

আমি আসলে উভয় ব্যবহার। এসএনএন / গিট এবং আরএসএনসি দুটি পৃথক উদ্দেশ্যে পরিবেশন করে। SVN / Git উৎস নিয়ন্ত্রণ জন্য, rsyncএবং sql-syncদক্ষতার উপস্থাপনকারী ও প্রড সিঙ্ক জন্য। drush rsync @staging @prodসরলতার দিক থেকে পরাজিত করা খুব শক্ত continuous Integrationএবং আপনার কোডের মানের উন্মত্ততা / পদ্ধতিগুলির মধ্যে আরও গভীরতর ডাইভ করতে চাইলে আপনি যে কোনও পরিবেশে একীভূত হওয়া খুব ভয়ঙ্কর ।


1

ব্যক্তিগতভাবে আমি সংস্করণ নিয়ন্ত্রণ, স্থাপনা এবং বিভিন্ন সার্ভার কোডবাস সিঙ্ক করার জন্য এবং তারপরে ব্যবহারকারীদের ফাইলগুলি সরানোর / সিঙ্ক করার জন্য rsync ব্যবহার করি (.gitignore ফাইলে কিছু নির্দিষ্ট পথ যোগ করে উপেক্ষা করা হয়) use

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.