একটি স্থানীয় রেপোতে "এমভিএন মোতায়েন" এবং "এমভিএন ইনস্টল" এর মধ্যে পার্থক্য কী?


95

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

প্রশ্নটি হল, mvn installডিপ্লয় গোল (এমভিএন-ডিপ্লয় প্লাগইন) ব্যবহার করে ভাগ করা রেপোতে ফাইল যুক্ত করার মধ্যে পার্থক্য কী ?

আমার কাছে মনে হয় mvn deployঅতিরিক্ত কনফিগারেশন ঝামেলা তৈরি করে , তবে আমি কোথাও পড়েছি যে ভাগ করা রেপোতে ফাইলগুলি ইনস্টল করা মাভেনের অভ্যন্তরীণ কাজের সাথে সম্পর্কিত কোনও কারণে খারাপ ধারণা।

আপডেট: আমি deployএবং এর মধ্যে কার্যকরী পার্থক্য পেয়েছি install; ম্যাভেন রেপোতে কী কী ফাইল তৈরি করা হয় সে সম্পর্কে আমি নিম্ন স্তরের বিশদগুলিতে আসলেই বেশি আগ্রহী।

উত্তর:


167

কেন, ভাল প্রশ্ন। পার্থক্য সম্পর্কে আমার সংজ্ঞা নির্দেশিকায় আরও স্পষ্ট হওয়া উচিত । "ইনস্টল" এবং "স্থাপন" একটি বিল্ডে দুটি পৃথক উদ্দেশ্যে পরিবেশন করে। "ইনস্টল" বলতে আপনার স্থানীয় ভান্ডারগুলিতে একটি আর্টিফ্যাক্ট ইনস্টল করার প্রক্রিয়া বোঝায়। "মোতায়েন করা" বলতে একটি রিমোট রিপোজিটরিতে একটি শৈলী নিযুক্ত করার প্রক্রিয়া বোঝায়।

উদাহরণ:

  1. আমি যখন আমার মেশিনে একটি বৃহত মাল্টি-মডিউল প্রকল্প পরিচালনা করি, আমি সাধারণত "এমভিএন ইনস্টল" চালাচ্ছি। এটি আমার স্থানীয় সংগ্রহস্থলে উত্পন্ন সমস্ত বাইনারি সফ্টওয়্যার শিল্পকলা (সাধারণত জেআর) ইনস্টল করতে চলেছে। তারপরে আমি যখন বিল্ডে পৃথক মডিউল তৈরি করি, মাভেন স্থানীয় সংগ্রহস্থল থেকে নির্ভরতা পুনরুদ্ধার করতে চলেছে।

  2. যখন স্ন্যাপশট বা প্রকাশের স্থাপনার সময় আসে তখন আমি "এমভিএন ডিপ্লয়" চালাচ্ছি। এটি চালানো একটি দূরবর্তী সংগ্রহস্থল বা সার্ভারে ফাইলগুলি মোতায়েন করার চেষ্টা করতে যাচ্ছে। সাধারণত আমি নেক্সাসের মতো একটি সংগ্রহস্থল ব্যবস্থাপকের কাছে স্থাপন করা হতে চলেছি

এটি সত্য যে "মোতায়েন" চালানোর জন্য কিছু অতিরিক্ত কনফিগারেশন লাগবে, আপনাকে আপনার পিওএমে একটি ডিস্ট্রিবিউশনমেজমেন্ট বিভাগ সরবরাহ করতে হবে।


@ টিম তাই ঠিক কি সুবিধা আছে mvn deploy? এটি প্রথম স্থানে প্রয়োজনীয় অতিরিক্ত কনফিগারেশনের জন্য কী সুবিধা দেয়?
গিক

4
ডিপ্লয় একটি রিমোট সার্ভারে নিদর্শন নিযুক্ত করার জন্য ডিজাইন করা হয়েছে। এটি ইনস্টল থেকে সম্পূর্ণ ভিন্ন ব্যবহারের কেস।
টিম ওব্রায়ান

17

ম্যাভেন ডকস থেকে মনে হচ্ছে এটি কেবলমাত্র একটি পার্থক্য যার মধ্যে আপনি প্যাকেজটি প্যাকেজটি ইনস্টল করেন:

  • স্থানীয়ভাবে অন্যান্য প্রকল্পের নির্ভরতা হিসাবে ব্যবহারের জন্য, স্থানীয় সংগ্রহস্থলে প্যাকেজ ইনস্টল করুন
  • স্থাপনা - সংহতকরণ বা মুক্তির পরিবেশে করা, অন্যান্য বিকাশকারী এবং প্রকল্পগুলির সাথে ভাগ করে নেওয়ার জন্য চূড়ান্ত প্যাকেজটি দূরবর্তী সংগ্রহস্থলে অনুলিপি করে।

সম্ভবত সিআই সার্ভারের "ইনস্টল" এর মধ্যে কিছু বিভ্রান্তি রয়েছে যা এটি স্থানীয় ভান্ডারটিতে ইনস্টল করে, যা ব্যবহারকারী হিসাবে আপনি ভাগ করছেন?


4

"ম্যাট বি" এর অধিকার আছে, তবে নির্দিষ্ট হওয়ার জন্য, "ইনস্টল" লক্ষ্যটি আপনার বিল্ড টার্গেটটি আপনার ফাইল সিস্টেমের স্থানীয় সংগ্রহস্থলে অনুলিপি করে; প্রকল্পগুলি জুড়ে ছোট পরিবর্তনগুলির জন্য দরকারী বর্তমানে সম্পূর্ণ দলের জন্য নয়।

"স্থাপনা" লক্ষ্যটি আপনার কাজ শেষ হয়ে যাওয়ার জন্য এটি আপনার ভাগ করা ভান্ডারগুলিতে আপলোড করে এবং তারপরে তাদের প্রকল্পের জন্য এটি প্রয়োজন এমন অন্যান্য ব্যক্তিরাও ভাগ করে নিতে পারেন।

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

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