গিট ব্যবহার করে একাধিক বিকাশকারীকে ডাব্লুপি ডাটাবেস সিঙ্ক করে রাখা


33

আমি আমার গিট ওয়ার্কফ্লো উন্নত করতে কাজ করছি কারণ এটি আমার ওয়ার্ডপ্রেস বিকাশ প্রকল্পগুলিতে প্রযোজ্য। প্রায়শই, একটি সামগ্রী পরিচালনা ব্যবস্থা বিকাশ করার সময়, আমি http://dev.finalsitename.comকাস্টম পোস্টের ধরণ এবং ট্যাক্সনোমিজ সমন্বিত একটি ডেভলপমেন্ট সার্ভার তৈরি করব যা উত্পাদন সংস্করণে ব্যবহৃত হবে। এটি আমার ক্লায়েন্টকে সাইটে তাদের সামগ্রী যুক্ত করার অনুমতি দেয় allows

তারা এই কাজটিতে কাজ করার সময়, আমি সাধারণত আমার লোকালহোস্ট পরিবেশে ব্যবহৃত হবে এমন কাস্টম প্রোগ্রামিং / প্লাগইনগুলির পাশাপাশি চেহারা এবং বোধ তৈরি করি। আমি তাদের আপডেটগুলির কোনওটি ওভাররাইট না করি তা নিশ্চিত করতে, আমি সাধারণত তাদের ডাটাবেসের একটি অনুলিপি নীচে টানুন এবং আমার প্রতিস্থাপন করি। যাইহোক, এমন অনেক সময় আছে যেখানে আমাকে কেবল ডাব্লুপি প্রশাসনের অঞ্চলে প্রবেশ করতে হবে এবং একটি সেটিংস বা অন্য কোনও ছোট কিছু পরিবর্তন করতে হবে ...

যদি ওয়ার্ডপ্রেস প্রকল্পে একাধিক বিকাশকারী কাজ করে থাকে তবে আমরা প্রত্যেকে সাইটের সংস্করণটির একটি (টাইমস্ট্যাম্পড) ডাটাবেস ডাম্প করি এবং তাদের স্থানীয় শাখাটি রিমোট রিপোজিটরিতে ফিরিয়ে দেওয়ার আগে এবং মূল ডিরেক্টরিতে অন্তর্ভুক্ত করি। এই পদ্ধতির সাথে সমস্যাটি হ'ল ডেটাবেসগুলি কোনটি ব্যবহার করবেন তা নির্ধারণের কোনও সহজ উপায় ছাড়াই প্রায়শই সিঙ্কের বাইরে চলে যায়।

একাধিক বিকাশকারী (এবং ক্লায়েন্ট / বিষয়বস্তু উত্পাদক) একই প্রকল্পে কাজ করার অনুমতি দেওয়ার সময় অন্য ডেভেলপাররা তাদের ডাটাবেসগুলি সিঙ্কে রাখার জন্য কী করছেন?

উত্তর:


12

সবচেয়ে সহজ -> থেকে 3 টি বিকল্প রয়েছে

  1. কেবলমাত্র একটি দূরবর্তী ডাটাবেস ব্যবহার করুন যা আপনি সকলেই প্রচুর ব্যাকআপের সাথে সংযুক্ত হন। এইভাবে আপনাকে কেবল ফাইলগুলির বিষয়েই চিন্তা করতে হবে, ডিবি নয়।

  2. ওয়ার্ডপ্রেসে অন্তর্নির্মিত আমদানি ও রফতানি কার্যকারিতাটি ব্যবহার করুন এবং এটিকে ডাব্লুপি রুটে আপনার নতুন সংস্করণ নিয়ন্ত্রণে ফেলে দিন (নতুন ফোল্ডারের মতো)। অবশ্যই এটি অতিরিক্ত কয়েক মিনিট সময় নেয় তবে এর মৃত সহজ এবং আপনি এটি স্বয়ংক্রিয় করতে পারেন তবে আরও গুরুত্বপূর্ণ এটি সংস্করণ নিয়ন্ত্রণের অংশ হয়ে উঠবে।

  3. আসল ডাটাবেস সিঙ্কটি সংস্করণ করতে একটি কাস্টম আপডেটিং স্ক্রিপ্ট ব্যবহার করুন। আমি সত্যিই জানি না আপনি কীভাবে গিট দিয়ে এটি পরিচালনা করতে পারেন কারণ এটি একটি কেবল একটি স্ক্রিপ্ট এবং সত্যিই কী চলছে তা জানেন না, আমি জানি যে 3rd য় পক্ষের সরঞ্জাম রয়েছে যা এই বাণিজ্যিক এবং নিখরচায় করে ( http: // www। liquibase.org/ )।


1

আপনার যদি প্রয়োজন হয় ডেটাবেসগুলি পুরো সিঙ্কে রাখেন, যেমন। স্কিমা এবং ডেটা, আপনি ব্যাকআপের উপর ভিত্তি করে একটি কাস্টম সংস্করণ সিস্টেম বিকাশ করতে পারেন।

অথবা আপনি যদি উত্পাদন থেকে ডেটা রাখতে চান তবে এর স্কিমাটি বিকাশ করতে চান তবে আপনি একটি কাস্টম সলিউশন (সমস্ত স্কিমার পরিবর্তিত সংস্করণযুক্ত ফাইল), বা এর ধারণার ভিত্তিতে একটি স্ট্যান্ডার্ড সমাধান সহ কাজ করতে পারেন migration। আপনি এই স্ট্যাকওভারফ্লো থ্রেডে প্রচুর তথ্য খুঁজে পেতে পারেন: ডিবি স্কিমা পরিবর্তনগুলি ট্র্যাক করার জন্য প্রক্রিয়া


এছাড়াও এখানে একটি সাধারণ স্ট্যাকওভারফ্লো.com
প্রশ্নগুলি /

1

আমি দুঃখিত যদি এটি অবিশ্বাস্যভাবে সুস্পষ্ট বলে মনে হয় তবে আপনার যদি একই কাঠামোর সাথে ডাটাবেসের একই অনুলিপি থাকা দরকার, তবে কোনও অফিস / কেন্দ্রীয় এসকিউএল সার্ভার থাকা এবং এটি ব্যবহার করা কি বোধগম্য নয়? আপনার যদি পরীক্ষার প্রয়োজন হয় তবে স্থানীয়ভাবে এটি ক্লোন করুন তবে এটি লেখক ডিফ্যাক্টো মান হিসাবে রাখুন এবং সেই সার্ভার এবং কেবলমাত্র সেই সার্ভারের ব্যাকআপ নেবেন।

অন্যথায় যখন আমি একটি গ্রুপ প্রকল্পে কাজ করছি তখন আমাদের বিভিন্ন সামগ্রী সহ আমাদের নিজস্ব সেটআপ রয়েছে। কোডটি টেবিলের কাঠামোগুলি আপগ্রেড এবং মাইগ্রেশন করার জন্য যত্ন নেয় এবং আমরা আমাদের মেশিনগুলিতে ল্যানের মাধ্যমে চলমান কোডের স্থানীয় ইনস্টলেশনগুলি অ্যাক্সেস করতে পারি, সুতরাং আমাদের সামগ্রী ভাগ করার দরকার নেই।

যদি আমরা বিষয়বস্তুতে প্রবেশ করি তবে আমরা এটি একটি পরীক্ষার সার্ভারে চালিত করি যা আমরা হয় সরাসরি সার্ভারে রফতানি ও আমদানি করতে পারি, বা বর্তমানে কোনও লাইভ উদাহরণ না থাকলে আমরা সরাসরি প্রোডাকশন সার্ভারে স্থানান্তর করতে পারি।

যদি কোনও মুহুর্তে আপনার কাছে লাইভ টেস্ট এবং ডাব্লুআইপি ডেটা আলাদা করার প্রয়োজন হয় তবে আপনার সংগ্রহস্থলটিতে কেবল একটি লাইভ, পরীক্ষা এবং বিকাশ শাখা ব্যবহার করুন

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