উত্তর:
উত্স নিয়ন্ত্রণে মেটাডেটা পরিচালনা করা উচিত নয়। এগুলিতে আপনার ওয়ার্কস্পেসের সাথে সম্পর্কিত বেশিরভাগ ডেটা থাকে ।
ব্যতিক্রম কেবল .launch
এক্সএমএল ফাইলগুলি (লঞ্চের সংজ্ঞা)।
তারা পাওয়া যায়
[eclipse-workspace]\.metadata\.plugins\org.eclipse.debug.core\.launches
এবং সেগুলি আপনার প্রকল্প ডিরেক্টরিতে অনুলিপি করা উচিত: যখন আপনার প্রকল্পটি রিফ্রেশ হয়, সেই কনফিগারেশনগুলি "রান কনফিগারেশন" কথোপকথনে প্রদর্শিত হবে।
এইভাবে, সেই লঞ্চ পরামিতি ফাইলগুলি এসসিএম-এও পরিচালনা করা যায়।
(সতর্কতা: দো বিকল্প আনচেক "মুছে কনফিগারেশনের যখন যুক্ত রিসোর্স মুছে ফেলা হয়" মধ্যে চালান / লঞ্চ / লঞ্চ কনফিগারেশন পক্ষপাত প্যানেল: এটা সাধারণ একটি প্রকল্প অনুক্রমে এটা আমদানি করতে ফিরে আবার নরম মুছুন - একটি reinitialization বলপূর্বক গ্রহনটি মেটাডেটা But
project-dir/.project
project-dir/.classpath
project-dir/.settings/*
আপনার এসসিএমে থাকা উচিত (বিশেষত .project
এবং গ্রহগ্রহের ডকুমেন্টেশন.classpath
অনুসারে )।
লক্ষ্যটি হ'ল যে কেউ তার / তার এসসিএম কর্মক্ষেত্রটি চেকআউট / আপডেট করতে এবং Eclipse প্রকল্পটি Eclipse workpace এ আমদানি করতে পারবেন।
তার জন্য, আপনি লিখিত সংস্থানগুলি ব্যবহার করে আপনার .classpath এ কেবলমাত্র আপেক্ষিক পাথ ব্যবহার করতে চান ।
দ্রষ্টব্য: project-dir
গ্রহ কর্মক্ষেত্রের অধীনে তৈরি ডিরেক্টরি নয়, "বাহ্যিক" প্রকল্প ডিরেক্টরিকে বোঝানো ভাল । এইভাবে, দুটি ধারণা (গ্রহন কর্মক্ষেত্র বনাম এসসিএম ওয়ার্কস্পেস) স্পষ্টভাবে পৃথক করা হয়েছে।
যেমন মন্তব্যগুলিতে ইপসকিগল উল্লেখ করেছেন, এবং আমি যেমন একটি পুরানো উত্তরে ইঙ্গিত করেছি , আপনি সরাসরি আপনার প্রকল্প ডিরেক্টরিতে ভাগ করা ফাইল হিসাবে লঞ্চ কনফিগারেশনটি সংরক্ষণ করতে পারেন । সমস্ত প্রবর্তন কনফিগারেশন তখন অন্যান্য প্রকল্প ফাইলগুলির মতো সংস্করণযুক্ত হতে পারে।
(ব্লগ পোস্ট টিপ থেকে: কেডি থেকে লঞ্চ কনফিগারেশন তৈরি এবং ভাগ করে নেওয়া)
.project
আপনার কর্মক্ষেত্রের জন্য উপেক্ষা করুন make তবে অন্যান্য গ্রাহক প্রকল্পের সংজ্ঞাটি ব্যবহার করে তাদের বঞ্চিত করবেন না যে তারা দ্রুতই তাদের গ্রহন কর্মক্ষেত্রে আমদানি করতে পারে, কেবলমাত্র আপনার অতিরিক্ত অতিরিক্ত সংজ্ঞা রয়েছে যা কেবলমাত্র আপনার মুহুর্তের প্রয়োজনের সাথে খাপ খায়।
আমি বর্তমানে এমন একটি প্রকল্পে কাজ করছি যেখানে আমাদের কাছে সোর্স নিয়ন্ত্রণে। প্রকল্প এবং .cproject ফাইল রয়েছে। ধারণাটি ছিল যে লাইব্রেরির পাথ এবং লিঙ্কের নির্দেশাবলী সম্পর্কিত সেটিংস টিম জুড়ে প্রচার করবে।
বাস্তবে এটি খুব ভালভাবে কাজ করেনি, মার্জগুলি প্রায় সবসময় একটি দ্বন্দ্বপূর্ণ অবস্থায় ফিরে আসে যা গ্রহণের বাইরে ডিকনফ্লিক্ট করা দরকার এবং তারপরে প্রকল্পগুলি বন্ধ হয়ে যায় এবং পরিবর্তনগুলি কার্যকর হওয়ার জন্য এটি আবার খোলা হয়।
আমি তাদের উত্স নিয়ন্ত্রণে রাখার পরামর্শ দেব না।
এটি সিডিটি কনফিগারেশন ফাইলগুলি উত্স-নিয়ন্ত্রণ-বান্ধব নয় এমন কোনও মূল্য নেই । .Cproject ফাইলগুলির জন্য খুব ঘন ঘন পরিবর্তন হওয়া এবং দ্বন্দ্ব সৃষ্টি করার জন্য একটি ত্রুটিযুক্ত ফাইল রয়েছে, দেখুন ভান্ডারটিতে সিডিটি -প্রকল্প ফাইলগুলি ভাগ করা সর্বদা বিবাদ সৃষ্টি করে ।
কিছু প্রকল্প, যেমন মাভেন ব্যবহার করে, পিওএম এর উপর ভিত্তি করে। প্রজেক্ট ফাইল তৈরি করতে পছন্দ করে।
এটি বলেছিল যে, --Mmetadata ছাড়া অন্য কোনও উত্স নিয়ন্ত্রণে থাকা উচিত নয়। আপনার প্রকল্পটি কীভাবে মানদণ্ডগুলি পরিচালনা করার পরিকল্পনা করে এবং এর উপর ভিত্তি করে প্রজেক্টের /। সেটিংগুলি করে কিনা তা সম্পর্কে আপনার সিদ্ধান্ত নিতে হবে। যদি আপনি মানসম্পন্ন ভিত্তিতে আপনার বিকাশকারীদের তাদের পরিবেশ স্থাপনের জন্য সত্যই বিশ্বাস করতে পারেন, এবং আপনাকে কোনও প্রকল্পের জন্য বিশেষ কিছু কাস্টমাইজ করতে হবে না, তবে আপনাকে এগুলি লাগাতে হবে না। আমি, আমি প্রতিটি প্রকল্প বিশেষত কনফিগার করার পরামর্শ দিচ্ছি । এটি ডিভসকে একই কর্মক্ষেত্রে একাধিক প্রকল্পের স্টাফগুলিতে ডিফল্ট সেটিংসগুলি পিছনে পিছনে পরিবর্তন না করে কাজ করার অনুমতি দেয় এবং এটি সেটিংগুলিকে অত্যন্ত স্পষ্ট করে তোলে, প্রকল্পের মানগুলির সাথে মেলে তার ডিফল্ট সেটিংস যাই হোক না কেন তা ওভাররাইড করে।
কেবল কঠিন অংশই নিশ্চিত করছে যে তারা সবাই সিঙ্কে রয়েছেন। তবে বেশিরভাগ ক্ষেত্রে আপনি প্রকল্প থেকে প্রজেক্টে। সেটিং ফাইলগুলি অনুলিপি করতে পারেন। উত্স নিয়ন্ত্রণে আপনি যদি বিশেষত চান না এমন কিছু থাকে তবে এসএনএন সেট করার সমতুল্য করুন: তাদের জন্য উপেক্ষা করুন, যদি আপনার এসসিএম সমর্থন করে।
.Classpath ফাইলটি অবশ্যই scm এ যাচাইয়ের জন্য ভাল প্রার্থী হিসাবে এটি নিজের হাতে সেট করা অনেক কাজ হতে পারে এবং নতুন ডেভসগুলির পক্ষে প্রকল্পে প্রবেশ করা কঠিন হবে। এটি সত্য যে এটি অন্যান্য উত্স থেকে উত্পন্ন হতে পারে, এক্ষেত্রে আপনি অন্য উত্সটিতে যাচাই করবেন।
.Settings হিসাবে এটি সেটিংসের উপর নির্ভর করে। এটি একটি ধূসর অঞ্চল, তবে কিছু সেটিংস প্রায় বাধ্যতামূলক এবং কোনও প্রকল্প চেক আউট করতে, এটিকে Eclipse এ আমদানি করতে এবং সবকিছু সেট আপ করা এবং যেতে ভাল থাকতে সুবিধাজনক।
আমাদের প্রকল্পে, তাই আমরা সিভিএস.সেটেটিংস নামে .setting ফোল্ডারের একটি অনুলিপি বজায় রাখি এবং এটি আমাদেরকে সেট করে সেটিংসে অনুলিপি করার জন্য একটি পিঁপড়া কাজ রয়েছে। আপনি যখন সিভিএস থেকে প্রকল্পটি পাবেন, আপনি নতুন। সেটিং ফোল্ডারে ডিফল্ট সেটিংস অনুলিপি করতে 'ইলিসিফাই' পিঁপড়া কাজটি কল করুন। আপনি যখন প্রকল্পের বিকাশকারী প্রত্যেকের জন্য প্রয়োজনীয় সেটিংস কনফিগার করেন, আপনি সেগুলি আবার সিভিএস.সেটেটিং ফোল্ডারে মার্জ করে এবং সিভিএসে প্রতিশ্রুতিবদ্ধ। এসসিএম-এ এইভাবে সেটিং সেটিংস সচেতন প্রক্রিয়াতে পরিণত হয়। যখন সময়ে সময়ে বড় পরিবর্তনগুলি চেক করা হয় তখন ডিভাইসগুলি তাদের সেটিং ফোল্ডারে আবার ফিরে যেতে পারে But তবে এটি একটি সহজ সিস্টেম যা আশ্চর্যজনকভাবে ভালভাবে কাজ করে।
আমি তাদের কেউই বলব না। এগুলির মধ্যে সম্ভবত এমন তথ্য রয়েছে যা কেবলমাত্র আপনার ওয়ার্কস্টেশনের সাথে প্রাসঙ্গিক (আমি লাইব্রেরি এবং সকলের জন্য পাথের বিষয়ে ভাবছি)। এছাড়াও আপনার দলের কেউ যদি গ্রহনটি ব্যবহার না করে?
বিবেচনা:
.classpath
.project
.launch
আপনি প্রকল্প-আপেক্ষিক পাথ ব্যবহারের ক্ষেত্রে যতক্ষণ না লেগে থাকেন ততক্ষণ এগুলি সংস্করণ নিয়ন্ত্রণে থাকা উচিত। এটি অন্যান্য বিকাশকারীদের প্রকল্পটি যাচাই করতে এবং অন্য বিকাশকারীদের পাশাপাশি যে সমস্ত সেটআপ ব্যথা পেরেছে সেগুলি ছাড়াই এখনই কাজ শুরু করার অনুমতি দেয়।
সংস্করণ নিয়ন্ত্রণে আপনি। পরিবর্তন করুন, তাই আমি .মেডাটাটা অন্তর্ভুক্ত না করার পরামর্শ দেব। কেবলমাত্র বিদ্যমান সমস্ত গ্রহিত প্রকল্প আমদানি করে স্থানীয় ওয়ার্কস্পেস তৈরি করা সহজ।
আমি নতুন সহকর্মীদের (এবং আমার) জন্য গ্রহণ কর্মক্ষেত্র সেটিংস কনফিগার করার জন্য অনেক ঘন্টা ব্যয় করেছি। আমি শেষ পর্যন্ত যা করতে পেরেছি তা হ'ল নতুন নিজস্ব বিকাশকারী মেশিনে আমার নিজের।
আপনি যদি একটি দলে কাজ করছেন তবে আমি মনে করি সংস্করণ নিয়ন্ত্রণে রাখার জন্য নিম্নলিখিতগুলি খুব ভাল প্রার্থী:
common
ট্যাবে কোনও লঞ্চ কনফিগারেশন সম্পাদনা করেন , তখন চয়ন করুনSave as > shared file
। এটি সরাসরি প্রকল্প ফোল্ডারে ফেলে দেয়, তাই এটি প্রকল্পের বাকী অংশেও এসসিএম করা যায়।