গিট সাবসার্শন থেকে ভাল কেন?


393

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

তবুও ক্রমবর্ধমান সংখ্যক বিকাশকারী দাবি করছেন যে সাবভারশনটির সমস্যা রয়েছে এবং আমাদের গিটের মতো বিতরণযোগ্য সংস্করণ নিয়ন্ত্রণ সিস্টেমের নতুন জাতের দিকে চলে যাওয়া উচিত ।

সাবট্রিশনের উপর গিট কীভাবে উন্নতি করবে?

উত্তর:


548

গিট সাবভার্সনের চেয়ে ভাল নয়। তবে এটি আরও খারাপ নয়। এটা ভিন্ন.

মূল পার্থক্য হ'ল এটি বিকেন্দ্রীভূত। কল্পনা করুন যে আপনি রাস্তায় একজন বিকাশকারী, আপনি আপনার ল্যাপটপে বিকাশ করেছেন এবং আপনি উত্স নিয়ন্ত্রণ রাখতে চান যাতে আপনি 3 ঘন্টা পিছনে যেতে পারেন।

সাবভারশন সহ, আপনার একটি সমস্যা রয়েছে: এসভিএন সংগ্রহস্থলটি এমন জায়গায় থাকতে পারে যেখানে আপনি পৌঁছাতে পারবেন না (আপনার সংস্থায় এবং আপনার কাছে এই মুহুর্তে ইন্টারনেট নেই), আপনি প্রতিশ্রুতি দিতে পারবেন না। আপনি যদি নিজের কোডটির একটি অনুলিপি তৈরি করতে চান তবে আপনাকে আক্ষরিকভাবে এটি অনুলিপি / আটকানো হবে।

গিটের সাথে আপনার সমস্যা নেই have আপনার স্থানীয় অনুলিপি একটি সংগ্রহশালা এবং আপনি এটিতে প্রতিশ্রুতিবদ্ধ করতে পারেন এবং উত্স নিয়ন্ত্রণের সমস্ত সুবিধা পেতে পারেন। আপনি যখন মূল সংগ্রহস্থলটির সাথে সংযোগ ফিরিয়ে আনেন, আপনি এর বিরুদ্ধে প্রতিশ্রুতিবদ্ধ করতে পারেন।

এটি প্রথমে দেখতে দুর্দান্ত দেখায় তবে এই পদ্ধতির সাথে যুক্ত হওয়া জটিলতা মনে রাখবেন।

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

সাবভার্শনে সমস্যা রয়েছে তবে গিট, মার্কুরিয়াল, সিভিএস, টিএফএস বা যা কিছু আছে does

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

প্রথমত, বিকেন্দ্রীকরণের কাজ করার সময় গিট প্রথমে সত্যিই বিভ্রান্ত হতে পারে। রিমোট কী? এবং প্রাথমিক সংগ্রহস্থল কীভাবে সঠিকভাবে সেট আপ করবেন? দুটি প্রশ্ন যা শুরুতে উঠে আসে, বিশেষত এসভিএন-এর সাধারণ "এসএনএডমিন তৈরি" এর সাথে তুলনা করে, গিটের "গিট ইন" কোনও - কেন্দ্রীভূত সেটআপ করার "যথাযথ" উপায় বলে মনে হচ্ছে - - বার এবং - ভাগ করে নিতে পারে সংগ্রহস্থল। এর কারণ রয়েছে তবে এটি জটিলতা যুক্ত করে। "চেকআউট" কমান্ডের ডকুমেন্টেশনটি লোকেরা পরিবর্তনের জন্য খুব বিভ্রান্তিকর - "সঠিক" উপায়টি "গিট ক্লোন" বলে মনে হচ্ছে, যখন "গিট চেকআউট" শাখাগুলি স্যুইচ করে।

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

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

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

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

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

এটি ইন্টারনেটে কেন এত বেশি গুঞ্জন অর্জন করে তাও ব্যাখ্যা করে, যেহেতু গিট ওপেন সোর্স প্রকল্পগুলির জন্য পুরোপুরি উপযোগী: জাস্ট এটিকে কাঁটাচামচ করুন, নিজের ফর্কটিতে আপনার পরিবর্তনগুলি প্রতিশ্রুতিবদ্ধ করুন এবং তারপরে মূল প্রজেক্ট রক্ষণকারীকে আপনার পরিবর্তনগুলি টানতে বলুন। গিটের সাথে, এটি কেবল কাজ করে। সত্যিই, গিথুব এ চেষ্টা করে দেখুন, এটি ম্যাজিক।

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

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


70
একটি ফেরারি হুন্ডাইয়ের চেয়ে ভাল নয়। তবে এটি আরও খারাপ নয়। এটা ভিন্ন. (কী? আমাকে
এমনিভাবে তাকাবেন

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

50
সাবভারশন এবং গিটের মধ্যে বিতরণ কেবলমাত্র পার্থক্য নয়। আপনি একাধিক সংগ্রহস্থল ব্যবহার না করে এটি কোনও জটিলতা যুক্ত করে না। আছে অনেক তীব্রতম পরিবর্তে গীত ব্যবহার করে সুফল কিন্তু মাত্র কয়েক (বেশিরভাগই তুচ্ছ) অসুবিধেও। গিট ব্যবহার করা হয় কারণ এটি ভাল, চকচকে নয়।
sebnav

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

5
আপনি কেবল তুলনায় বিতরণ দিকটি বিশ্লেষণ করুন। আমি আপনাকে বলব কেন। কারণ আপনি কেবল কোডটি ভাগ করতে চান । গিট এবং এসভিএন এর চেয়েও বেশি, আপনি কি কখনও শাখাগুলির মধ্যে ট্যাগ, ব্রাঞ্চ, মার্জ, বিরোধ নিষ্পত্তি, অনুলিপি করেছেন? আমি মনে করি আপনার বিশ্লেষণটি কেবল ত্রুটিযুক্ত। এই দিকগুলিতে, গিটটি একটি অনেক শক্তিশালী সরঞ্জাম। গিট পারে এমন জিনিসগুলির উল্লেখ না করে এবং এসভিএন, যেমন স্কোয়াশিং, ডিটেক্ট করা, প্রশংসনীয়, রিবেসিং, চেরি-পিকিং এবং আরও অনেক কিছুর মতো পারে না।
মিসচোনকার

145

গিটের সাহায্যে আপনি কার্যত অফলাইনে যে কোনও কিছু করতে পারেন, কারণ প্রত্যেকেরই নিজস্ব ভাণ্ডার রয়েছে।

শাখা তৈরি করা এবং শাখাগুলির মধ্যে মার্জ করা সত্যিই সহজ।

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

এটি একটি প্রকল্প কাঁটাচামচ করা, এটি সংশোধন করা এবং তবুও হেড শাখা থেকে বাগফিক্সগুলিতে মার্জ করা অবধি তুচ্ছ।

গিট লিনাক্স কার্নেল বিকাশকারীদের জন্য কাজ করে। এর অর্থ এটি সত্যই দ্রুত (এটি হতে হবে), এবং হাজার হাজার অবদানকারীদের স্কেল। গিটও কম স্থান ব্যবহার করে (মজিলা সংগ্রহস্থলের জন্য 30 গুণ কম স্থান)।

গিটটি খুব নমনীয়, খুব টিমটোড্ডিআই (এটি করার একাধিক উপায় রয়েছে)। আপনি যা চান ওয়ার্কফ্লো ব্যবহার করতে পারেন এবং গিট এটি সমর্থন করবে।

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

গিটের ত্রুটিগুলি:

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

31
যদিও সমস্ত গিট শেখা অনেক বেশি শক্ত হবে তবে মূল বিষয়গুলি প্রায় একই রকম। আপনি আরও উন্নত স্টাফগুলিতে প্রবেশ না করা অবধি পড়াশোনার সুযোগটি এতটা খাড়া নয়, যা এসভিএন কেবল কোনওভাবেই সক্ষম নয়।
sebnav

10
আমার জন্য +1 আমি মনে করি প্রচুর বিকাশকারী ভুলে গেছেন যে গিটের মধ্যে টরটোইজএসভিএন এর মতো কিছু নেই, এবং এটি কেবল বিকাশকারীরাই সংস্করণ নিয়ন্ত্রণ ব্যবহার করে না। এসভিএন | টরটোইজএসভিএন ব্যবহার করে আমাদের অ বিকাশকারীদের সংস্করণ নিয়ন্ত্রণ বিতরণ (এবং সমর্থন) সরবরাহ করার চিন্তাভাবনায় আমি কাঁপছি!
si618

7
আরেকটি অসুবিধা - আপনার কাছে সংগ্রহশালাটির একটি সম্পূর্ণ অনুলিপি থাকতে হবে, আপনি পার্টিয়ালগুলিতে কাজ করতে পারবেন না (যা আপনার কাছে প্রচুর কর্পোরেটের মতো বিশাল
আকারের থাকে তবে গুরুত্বপূর্ণ

3
আমি গিট পছন্দ করি, তবে এটি কার্যকরভাবে কার্যকরভাবে ব্যবহার করতে আমাকে প্রায় ছয় মাস সময় লেগেছিল। বলা হচ্ছে, আমি মিসেসজিট থেকে গিট শেল (কমান্ড প্রম্পট), গিট গুই এবং এমএসএসজিট থেকে গিট, এবং টরটোইজিগিতের সংমিশ্রণটি ব্যবহার করি। আমি মনে করি টার্টোজাইজিট দুর্দান্ত, তবে কেন বেশি লোক এটি ব্যবহার করে না তা আমি বুঝতে পারি না। আমি জানি যে এমএসজিগেট রক্ষণাবেক্ষণকারীরা বিভিন্ন কারণে কচ্ছপকে ঘৃণা করেন, তাদের মধ্যে কিছু আদর্শবাদী এবং এর সাথে এর কিছু যুক্ত থাকতে পারে। কচ্ছপ এক গোপনীয় গোপন বিষয়!
জিম রাদেন

2
আমি রাজী. আমি এসভিএন এবং জিআইটি উভয়ই ব্যবহার করি (প্রায় 6 মাস থেকে)। আমি এসভিএন-এর চেয়ে গিটকে অনেক বেশি ভালবাসি। এটি শিখতে কেবল সময় লাগে। আমার জন্য সবচেয়ে বড় লাফানো (আমি যে মুহূর্তে আলোটি দেখলাম: পি) তখন অবশেষে বুঝতে পেরেছিলাম যে এসভিএন যেভাবে কাজ করেছে তাতে জিআইটি ব্যবহারের চেষ্টা বন্ধ করতে হয়েছিল। তারপরে সবকিছু ঠিকঠাক হয়ে গেছে;)
ব্লিজ

110

অন্যান্য উত্তরগুলি গিতের মূল বৈশিষ্ট্যগুলি ব্যাখ্যা করার জন্য ভাল কাজ করেছে (যা দুর্দান্ত)। তবে আরও অনেক ছোট উপায় আছে যে গিট আরও ভাল আচরণ করে এবং আমার জীবনকে আরও সুচিন্তিত রাখতে সহায়তা করে। এখানে কিছু ছোট জিনিস দেওয়া হল:

  1. গিটের একটি 'ক্লিন' কমান্ড রয়েছে। আপনার ডিস্কে অতিরিক্ত ফাইলগুলি ঘন ঘন কীভাবে ফেলা হবে তা বিবেচনা করে এসভিএনকে এই কমান্ডটি মরিয়াভাবে প্রয়োজন।
  2. গিটের 'বাইসেক্ট' কমান্ড রয়েছে। এটা সুন্দর.
  3. এসভিএন প্রতিটি একক ফোল্ডারে .svn ডিরেক্টরি তৈরি করে (গিট কেবল একটি .git ডিরেক্টরি তৈরি করে )। আপনার লিখিত প্রতিটি স্ক্রিপ্ট এবং আপনার করা প্রতিটি গ্রেপ এই .svn ডিরেক্টরিগুলি উপেক্ষা করার জন্য রচনা করা দরকার। আপনার ফাইলগুলির বুদ্ধিমান অনুলিপি পেতে আপনার একটি সম্পূর্ণ কমান্ড ("এসএনএন এক্সপোর্ট") প্রয়োজন।
  4. এসভিএন-এ, প্রতিটি ফাইল এবং ফোল্ডার একটি পৃথক সংশোধন বা শাখা থেকে আসতে পারে। প্রথমদিকে, এই স্বাধীনতা পেয়ে ভাল লাগছে। তবে এর আসল অর্থটি হ'ল আপনার স্থানীয় চেকআউটটি পুরোপুরি খারাপ করার জন্য এক মিলিয়ন বিভিন্ন উপায় রয়েছে। (উদাহরণস্বরূপ, "এসএনএন সুইচ" যদি অর্ধেক পথ ব্যর্থ হয়, বা আপনি কোনও কমান্ড ভুল লিখলে)। এবং সবচেয়ে খারাপ দিকটি হ'ল: আপনি যদি এমন পরিস্থিতিতে পড়েন যেখানে আপনার কয়েকটি ফাইল এক জায়গা থেকে আসছে এবং কিছুগুলি অন্য জায়গা থেকে এসেছে, "এসএনএন স্ট্যাটাস" আপনাকে বলবে যে সবকিছু স্বাভাবিক। কী অদ্ভুত জিনিসগুলি তা আবিষ্কার করতে আপনাকে প্রতিটি ফাইল / ডিরেক্টরিতে "এসএনএন তথ্য" করতে হবে। যদি "গিট স্ট্যাটাস" আপনাকে বলে যে জিনিসগুলি স্বাভাবিক, তবে আপনি বিশ্বাস করতে পারেন যে জিনিসগুলি সত্যই স্বাভাবিক।
  5. আপনি যখনই কোনও কিছু সরিয়ে ফেলেন বা মুছুন তখন আপনাকে এসভিএনকে বলতে হবে। গিট এটি ঠিক খুঁজে বের করতে হবে।
  6. গিটে শব্দার্থবিজ্ঞান উপেক্ষা করা সহজ। আপনি যদি কোনও প্যাটার্ন উপেক্ষা করেন (যেমন * .pyc) তবে এটি সমস্ত উপ-ডিরেক্টরিতে উপেক্ষা করা হবে । (তবে আপনি যদি কেবলমাত্র একটি ডিরেক্টরিতে কিছু উপেক্ষা করতে চান তবে আপনি পারেন)। এসভিএন সহ এটি মনে হয় যে সমস্ত উপ-ডিরেক্টরিতে কোনও প্যাটার্ন উপেক্ষা করার সহজ উপায় নেই।
  7. ফাইল উপেক্ষা জড়িত অন্য আইটেম। গিটটি "ব্যক্তিগত" সেটিংস উপেক্ষা (ফাইলটি .git / তথ্য / বাদ দিয়ে) উপেক্ষা করা সম্ভব করে তোলে, যা অন্য কাউকে প্রভাবিত করে না।

2
বিজ্ঞাপন. Modern. আধুনিক গিটের সাহায্যে আপনি প্রতি ব্যবহারকারী "বেসরকারী" উপস্থাপনা করতে পারেন। .Gitignore (ম্যান গিট-কনফিগারেশন) এ কনফিগারেশন ভেরিয়েবল কোর ব্যবহার করে "প্রাইভেট" উপস্থাপন করতে পারেন।
জাকুব নরবস্কি

3
পুনরায় # 5: এটি সাধারণত সত্য হলেও, কখনও কখনও গিট এটি স্ক্রু করে। কমপক্ষে সাবভারশন দিয়ে, সরানো বা মুছার কারণে সমস্যাগুলি প্রায় অদ্যাবধি একটি পিইবিকেএসি। ট্র্যাকিংটি স্বয়ংক্রিয়ভাবে সরানো / মুছে ফেলা ভালো লাগার পরেও, আমি কমপক্ষে কমপক্ষে স্পষ্ট করে বলতে পারি যে আমি কীভাবে ফাইলগুলি ব্যবহার করছি তা সঞ্চারিতভাবে উল্লেখ করার ক্ষমতাটি প্রশংসা করব even
ক্রিস চরবারুক

8
@ ক্রিস: আপনি এটি স্পষ্টভাবে করতে পারেন: git mvএবং git rm
আর মার্টিনহো ফার্নান্দেস

2
আমি প্রতি কার্যকপি প্রতি একক .svn ডিরেক্টরিটির বিকল্পটি দেখতে চাই, তবে রেকর্ডের জন্য: # 3 এর জন্য: বেশিরভাগ সরঞ্জাম (ডিফল্টরূপে) .svn ডিরেক্টরিগুলি উপেক্ষা করবে। # 6 এর জন্য: আপনি পুনরাবৃত্তভাবে সম্পত্তি সেট করতে পারেন।
si618

6
3: "একক .svn" ডিরেক্টরিটি এখানে এসভিএন 1.7 এর সাথে থাকবে যখন ডাব্লুসি-এনজি বাস্তবায়নযোগ্য হবে। 1: এসভিএন ক্লিনআপ পেতে আপনি আপনার ডাব্লিউসির শীর্ষে 'রফতানি' করতে পারেন। 5: এটি এত সহজ নয়, আপনি যদি কোনও ফাইলের নাম পরিবর্তন করেন তবে এটি কি গিটকে চিনতে পারে এবং ইতিহাস রাখে, বা এড হিসাবে বিবেচনা করে ডিরেক্টরিতে মুছবে ?. 6/7: এসএনএন-র প্রতি ব্যবহারকারী ক্লায়েন্ট সেটিংয়ের জন্য গ্লোবাল-উপেক্ষা করে।
জিবিজবান

56

" গিটটি এক্স এর চেয়ে ভাল কেন " গিট বনাম অন্যান্য এসসিএম-এর বিভিন্ন উপকারিতা এবং রূপরেখা তুলে ধরে।

সংক্ষেপে:

  • গিট ফাইলের পরিবর্তে সামগ্রী ট্র্যাক করে
  • শাখাগুলি হালকা ওজনের হয় এবং মার্জ করা সহজ এবং আমার অর্থ সত্যই সহজ
  • এটি বিতরণ করা হয়, মূলত প্রতিটি সংগ্রহস্থলই একটি শাখা। আমার মতে সাবভার্সনের চেয়ে একযোগে এবং সহযোগিতামূলকভাবে বিকাশ করা অনেক সহজ। এটি অফলাইনও করে বিকাশকেও সম্ভব করে ।
  • এটি কোনও কর্মপ্রবাহ চাপিয়ে দেয় না , উপরের লিঙ্কযুক্ত ওয়েবসাইটে যেমন দেখা যায় , গিটের সাথে অনেকগুলি ওয়ার্কফ্লো সম্ভব রয়েছে। একটি সাবভারশন-স্টাইলের ওয়ার্কফ্লো সহজেই নকল করা হয়।
  • সাবট্রিশন সংগ্রহস্থলের তুলনায় গিট সংগ্রহস্থলগুলি ফাইল আকারে অনেক ছোট । কয়েক ডজন ".svn" সংগ্রহস্থলের বিপরীতে কেবল একটি ".git" ডিরেক্টরি রয়েছে (দ্রষ্টব্য সাবভার্সন 1.7 এবং উচ্চতর এখন গিটের মতো একটি ডিরেক্টরি ব্যবহার করে ))
  • দ্য উপস্থাপনকারী এলাকা সন্ত্রস্ত, আপনার আংশিক পরিবর্তন কমিট তবে আপনি যে পরিবর্তনগুলি কমিট করবে দেখুন এবং অন্যান্য বিভিন্ন কাপড় করার অনুমতি দিয়েছে।
  • স্ট্যাশিং অমূল্য যখন আপনি "বিশৃঙ্খল" বিকাশ করেন বা আপনি যখন অন্য কিছুতে (অন্য কোনও শাখায়) কাজ করছেন তখন কেবল কোনও বাগ ঠিক করতে চান।
  • আপনি ইতিহাস পুনর্লিখন করতে পারেন , যা প্যাচ সেট প্রস্তুত করতে এবং আপনার ভুলগুলি ঠিক করার জন্য দুর্দান্ত ( আপনি কমিট প্রকাশের আগে )
  • ... এবং অনেক আরও কিছু।

কিছু অসুবিধা রয়েছে:

  • এটির জন্য এখনও অনেক ভাল জিইউআই নেই। এটি নতুন এবং সাবভার্সনটি প্রায় দীর্ঘকাল ধরে রয়েছে, সুতরাং এটি স্বাভাবিক যেহেতু বিকাশের কয়েকটি ইন্টারফেস রয়েছে। কিছু ভালগুলির মধ্যে ম্যাকের জন্য টরটোইজিট এবং গিটহাব অন্তর্ভুক্ত রয়েছে
  • আংশিক চেকআউট / সংগ্রহস্থলগুলির ক্লোনগুলি এই মুহুর্তে সম্ভব নয় (আমি পড়েছি এটির বিকাশ চলছে)। তবে সাব-মডিউল সাপোর্ট রয়েছে। গিট 1.7+ বিরল চেকআউটগুলি সমর্থন করে
  • এটি শিখতে আরও কঠিন হতে পারে, যদিও আমি এটি কেস হিসাবে পাইনি (প্রায় এক বছর আগে)। গিটটি সম্প্রতি তার ইন্টারফেসটি উন্নত করেছে এবং এটি বেশ ব্যবহারকারী বান্ধব।

সর্বাধিক সরল ব্যবহারে সাবভার্সিয়ন এবং গিট প্রায় একই রকম। এর মধ্যে খুব বেশি পার্থক্য নেই:

svn checkout svn://foo.com/bar bar
cd bar
# edit
svn commit -m "foo"

এবং

git clone git@github.com:foo/bar.git
cd bar
# edit
git commit -a -m "foo"
git push

যেখানে গিট সত্যিই জ্বলজ্বল করছে অন্য শাখাগুলি দিয়ে কাজ করছে এবং কাজ করছে।


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

এসএনএন ট্র্যাকগুলি কি পুরো ফাইলগুলিকে পরিবর্তন করে?
সিউন ওসোয়া

12
@ যাইহোক, এটিকে ফাইল ট্র্যাকিং বলা হয়। ফাইলটির নাম পরিবর্তন করার চেষ্টা করুন, বা এটিকে ম্যানুয়ালি অন্য কোথাও স্থানান্তরিত করার চেষ্টা করুন [একই বিষয়বস্তু, নতুন ফাইল (নতুন পথ / নামের কারণে)]: এসভিএন কি জানতে পারবে যে এটি একই ফাইল এবং আপনি এটি তৈরি করেছেন এমন পূর্ববর্তী অগণিত সংশোধনীগুলি ধরে রাখবেন? না, আমি অনুমান করি না।
ফিলিপ দুপানভিভিć

কচ্ছপ - গিটার কোড.কম / ডটকমাইজিট | গিট 1.7 স্পার্স চেকআউটগুলি - কার্নেল.আর.
জাজ

54

গুগল টেক টক: লিনাস টরভাল্ডস গিট

http://www.youtube.com/watch?v=4XpnKHJAok8

গিট উইকির তুলনা পৃষ্ঠা

http://git.or.cz/gitwiki/GitSvnComparsion


12
লিনাসের কথাটি দেখতে মজাদার। তিনি সাবভারশন এবং সিভিএসের মতো কেন্দ্রীভূত সংস্করণ নিয়ন্ত্রণ ব্যবস্থাকে নির্মমভাবে ছিঁড়ে ফেলেন। তবে র‌্যান্ডাল শোয়ার্জ'স youtube.com/watch?v=8dhZ9BXQgc4 আলাপ আরও গঠনমূলক, আরও তথ্যবহুল এবং আরও দৃinc়প্রত্যয়ী।
বেন্ডিন

2
এটি একটি খুব সুন্দর। এটি গিট প্রতিশ্রুতিবদ্ধদের একজনের থেকে এবং তিনি অনেকগুলি উন্নত বৈশিষ্ট্য ব্যাখ্যা করেছেন যেমন বড় কমিটগুলি ছোট ছোটগুলিতে ভাগ করে নেওয়া। youtube.com/watch?v=j45cs5_nY2k
schoetbi

আমি লিনাস টরভাল্ডস ভিডিওটি উপভোগ করি তবে তিনি সূচিত করেছেন যে গিটটি বিতরণ করা হয়েছে, কেন্দ্রীভূত নয় এবং এটি কেবল ভুল। এটি বিতরণ উপায়ে বা কেন্দ্রীয়ভাবে ব্যবহার করা যেতে পারে। আপনার কাছে একটি কেন্দ্রীয় ভান্ডার থাকতে পারে যা প্রত্যেকে এসএমএন-এর মতো প্রতিশ্রুতিবদ্ধ। এটা ঠিক যে আপনাকে সেভাবে এটি করতে হবে না।
ম্যাট্রিক্সফ্রোগ

@ ম্যাট্রিক্স ফোরগ: আমি মনে করি যে এই ক্ষেত্রে "বিকেন্দ্রীভূত" "কেন্দ্রীয়ীকৃত" এর বিপরীত নয় বরং সত্যই একটি সুপারসেট। এটি "মোবাইল" এবং "অস্থায়ী" এর মতো - কিছু কারণ "মোবাইল" আমাকে দেয় না এটি স্থির থাকতে পারে না।
টিখন জেলভিস

26

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

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

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

আপনি ভাবেন যে গিট আপনার হার্ডড্রাইভে একগুচ্ছ জায়গা নেবে, তবে আমি যে দুটি মানদণ্ড দেখেছি তা আসলে কম লাগে। আমাকে জিজ্ঞাসা করবেন না কিভাবে। আমি বোঝাতে চাইছি এটি লিনাস তৈরি করেছিলেন, আমার ধারণা যে ফাইল সিস্টেমগুলি সে সম্পর্কে তিনি দু'একটি জিনিস জানেন।


1
নিছক চেকআউটের জন্য সাবট্রিশনের তুলনায় গিট কেন পুরো রিপোজিটরির জন্য কম ডিস্কের জায়গা নিতে পারে তার কারণ হ'ল সাবভার্সন 'এসভিএন ডিফ' (শেষ সংস্করণের সাথে তুলনা করা) কাজ করতে "প্রিন্টিন কপি" সঞ্চয় করে ... এবং এই গিট সংগ্রহস্থলটি সংকুচিত (এবং বিচ্ছিন্ন )।
জাকুব নারেবস্কি

3
আমি আশ্চর্য হই না যে গিট "ওয়ার্কিং ফোল্ডার" (যেমন, রেপোস) এসএনএন ওয়ার্কিং কপিগুলির চেয়ে ছোট কারণ এমনকি এসএনএন রেপোগুলি এসএনএন ওয়ার্কিং কপির চেয়ে ছোট are
আর মার্টিনহো ফার্নান্দেস

22

ডিভিসিএস-এর বিষয়ে আমার যে প্রধান পয়েন্টগুলি পছন্দ হয় সেগুলি হ'ল:

  1. আপনি ভাঙ্গা জিনিস করতে পারেন। এটি গুরুত্বপূর্ণ নয় কারণ আপনি প্রকাশ না করা পর্যন্ত অন্যান্য লোকেরা সেগুলি দেখতে পাবে না। প্রকাশের সময় কমিটের সময় থেকে আলাদা।
  2. এ কারণে আপনি আরও প্রায়ই প্রতিশ্রুতিবদ্ধ করতে পারেন।
  3. আপনি সম্পূর্ণ কার্যকারিতা মার্জ করতে পারেন। এই কার্যকারিতাটির নিজস্ব শাখা থাকবে। এই শাখার সমস্ত কমিটি এই কার্যকারিতা সম্পর্কিত হবে। আপনি এটি কোনও সিভিসিএস দিয়ে করতে পারেন তবে ডিভিসিএসের এটির ডিফল্ট।
  4. আপনি আপনার ইতিহাস অনুসন্ধান করতে পারেন (কোনও ফাংশন পরিবর্তিত হলে এটি সন্ধান করুন)
  5. কেউ যদি মূল ভান্ডারটি খুঁজে বের করে তবে আপনি একটি ত্রুটি পূর্বাবস্থায় ফেরাতে পারেন, আপনার ত্রুটিগুলি ঠিক করার দরকার নেই। শুধু মার্জটি সাফ করুন।
  6. যে কোনও ডিরেক্টরিতে যখন আপনার সোর্স কন্ট্রোলের দরকার হয় তখন করুন: git init। এবং আপনি পরিবর্তনগুলি পূর্বাবস্থায়িত করতে পারেন, ইত্যাদি ...
  7. এটি দ্রুত (এমনকি উইন্ডোতেও)

তুলনামূলকভাবে বড় প্রকল্পের মূল কারণটি 3 পয়েন্টটি দ্বারা নির্মিত উন্নত যোগাযোগ Others অন্যরা হ'ল চমৎকার বোনাস।


আমার মনে হয় পয়েন্ট # 1 বলতে চাইছে "আপনি প্রকাশ না করা অবধি" অন্যান্য ব্যক্তিরা সেগুলি দেখতে পাবে না (বা "ধাক্কা")।
জ্যাকার

+1 "আপনি ভাঙা জিনিসগুলি করতে পারেন" " আমি এসএনএন থেকে গিটে স্যুইচ করার বিষয়টি বিবেচনা করার মূল কারণ। আমি যখন ভারী কোড ব্লক তৈরির মাঝপথে থাকি তখন আমি সর্বদা ঘৃণা করি এবং আমার কাছে ভিসিএসের সুরক্ষা জাল নেই (কেবলমাত্র আমার পরিবর্তনগুলি এখনও কাজ করে না, তাই আমাকে প্রতিশ্রুতি দেওয়ার অনুমতি নেই)।
আন্দ্রেস জেপেশেজি

15

মজার বিষয় হ'ল আমি সাবভার্সন রেপোসে প্রকল্পগুলি হোস্ট করি তবে গিট ক্লোন কমান্ডের মাধ্যমে সেগুলি অ্যাক্সেস করি।

একটি গুগল কোড প্রকল্পে গিট সঙ্গে বিকাশ অনুগ্রহ করে পড়ুন

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

এসভিএন সংগ্রহস্থলের উপর গিট ব্যবহার করা আমার সুবিধাদি দেয়:

  1. আমি বেশ কয়েকটি মেশিনে বিতরণ , কমিট করে এবং সেখান থেকে তাদের কাছে টানতে কাজ করতে পারি
  2. অন্যদের চেক আউট করার জন্য আমার কাছে একটি কেন্দ্রীয় backup/public এসএনএন সংগ্রহস্থল রয়েছে
  3. এবং তারা নিজের জন্য গিট ব্যবহার করতে পারেন নিখরচায়

3
এটি একপ্রকার পুরানো, গুগল কোড মুরুরিয়াল করে তাই এই হ্যাকের আর দরকার নেই
স্যাম সাফারন

@ সাম যদি না আপনি গিট এবং / অথবা পছন্দ মত অপছন্দ না ঘটে।
ম্যাট্রিক্সফ্রোগ

11

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

সাবধানীকরণ এবং গিটের মধ্যে ক্লায়েন্ট টুলিং এবং প্রশিক্ষণ উভয় ক্ষেত্রেই এই বিষয়টি মনে রেখে, ব্যবহারের সহজতার তুলনা করুন। আমি কোন দৃশ্য দেখতে পাচ্ছি না যেখানে বিতরণকৃত সংশোধন নিয়ন্ত্রণ ব্যবস্থা অ-প্রোগ্রামারটিকে ব্যবহার করা বা বোঝানো সহজ হতে চলেছে। আমি ভুল প্রমাণিত হতে পছন্দ করব, কারণ তখন আমি গিটটি মূল্যায়ন করতে সক্ষম হব এবং প্রকৃতপক্ষে এটির একটি প্রোগ্রাম আছে যাঁরা প্রোগ্রামার নন এমন সংস্করণ নিয়ন্ত্রণের প্রয়োজন এমন লোকেরা গ্রহণ করবেন।

তারপরেও, কেন যদি ম্যানেজমেন্টকে জিজ্ঞাসা করা হয় যে কেন আমরা কেন্দ্রীভূত থেকে বিতরণকৃত সংশোধন নিয়ন্ত্রণ ব্যবস্থাতে চলে যেতে পারি, আমাকে একটি সত্যবাদী উত্তর দিতে কঠোর চাপ দেওয়া হবে, কারণ আমাদের এটির প্রয়োজন নেই।

দাবি অস্বীকার: আমি সাবভারশনে খুব তাড়াতাড়ি (v0.29 এর আশেপাশে) আগ্রহী হয়েছি তাই স্পষ্টতই আমি পক্ষপাতিত্ব করছি, কিন্তু সেই সময় থেকে যে সংস্থাগুলি আমি কাজ করেছি তাদের উত্সাহ থেকে উপকৃত হচ্ছি কারণ আমি এর ব্যবহারকে উত্সাহিত করেছি এবং সমর্থন করেছি। আমি সন্দেহ করি বেশিরভাগ সফ্টওয়্যার সংস্থার সাথে এটি কীভাবে ঘটে। এতগুলি প্রোগ্রামার গিট ব্যান্ডওয়াগনে ঝাঁপিয়ে পড়ে, আমি অবাক হয়ে দেখি যে কতগুলি সংস্থার উত্স কোডের বাইরে সংস্করণ নিয়ন্ত্রণ ব্যবহারের সুবিধাগুলি বাদ দিতে চলেছে? এমনকি যদি আপনার বিভিন্ন দলের জন্য পৃথক সিস্টেম রয়েছে, আপনি কিছু বেনিফিট (যেমন) (একীভূত) ট্র্যাকিং ইন্টিগ্রেশন ইস্যু, বর্ধমান রক্ষণাবেক্ষণ, হার্ডওয়্যার এবং প্রশিক্ষণের প্রয়োজনীয়তা বাদ দিচ্ছেন।


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

2
"বেশিরভাগ প্রোগ্রামার বিচ্ছিন্ন হয়ে কাজ করে না" মনে করে যে হিসাবরক্ষক / বিপণনকারীদের উত্স কোডটি যেখানে রাখা হয়েছে সেখানে একই রেপো ব্যবহার করতে হবে। আমি এর সুবিধা দেখছি না; আমার কিছু প্রাক্তন সংস্থাগুলি এ জাতীয় জিনিসের মান নির্ধারণ করতে চেয়েছিল, তবে এটি অনিবার্যভাবে ব্যর্থ হয়েছিল। আমি মনে করি সরল কৌশলটি ম্যানেজারের জন্য দুর্দান্ত হতে পারে তবে প্রোগ্রামার দলগুলির জন্য একটি ওভারসিম্প্লিফিকেশন - সুতরাং এগুলি একত্রিত করা একটি খারাপ সমঝোতার দিকে নিয়ে যায়।
ইনার্জ

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

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

1
@ কেয়ো, হ্যাঁ এটি সত্য নন-প্রোগ্রামাররা সাবভারশন পেতে সময় নিতে পারে তবে আমি মনে করি তারা গিট বা এইচজি সহ আরও বেশি সময় নিবে। উইকিগুলি রক্ষণাবেক্ষণের জন্য দুর্দান্ত তবে তারা আমার অভিজ্ঞতার বিকাশে বিকাশকারীরা সেই সূত্রের কোডের কাছাকাছি থাকলে উত্স কোডের সাথে সম্পর্কিত নথিগুলি বজায় রাখার সম্ভাবনা বেশি থাকে। আমি ইনগ্রের সাথে একমত হই যে এই বিভাগে ফিট করে এমন অনেকগুলি নথি নেই তবে সেগুলি অবশ্যই বিদ্যমান। এটি আকর্ষণীয় যে আপনি বলছেন গিট / এইচজি কাজের জন্য সর্বোত্তম হাতিয়ার, এটি একটি কম্বল বিবৃতি যা সম্ভবত সমস্ত পরিস্থিতিতে সত্য নয়, গিট এবং এইচজি-তে এসভিএন-এর মতো ভাল সংহতকরণ নেই?
si618

9

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


তবে এখন কয়েক বছর ধরে গিটটি ব্যাপকভাবে ব্যবহার করার পরে আমার নিজের সাথে একমত হতে হবে: গিট সাবভার্সনের চেয়ে অনেক ভাল। অন্তত একবার গিটের বন্ধুত্বপূর্ণ সিনট্যাক্সটি পেয়ে গেলে।
neu242

8

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

অবশ্যই, সাববার্শনের কচ্ছপ রয়েছে, যা [সাধারণত] খুব সুন্দর।


5
.svn ডায়ারগুলি শীঘ্রই চলে যাবে, সম্ভবত v1.7 দিয়ে
gbjbaanb

8

ডেভিড রিচার্ডস ওয়ানডিসকো ব্লগ সাবভার্সন / জিআইটি-তে

জিআইটির উত্থানটি ডিভিসিএসের মৌলবাদীদের একটি জাত নিয়ে আসে - 'জিটারনস' - যারা জিআইটি ব্যতীত অন্য কিছু বোকা বলে মনে করে। গিটারনরা মনে করে যে সফ্টওয়্যার ইঞ্জিনিয়ারিং তাদের নিজস্ব দ্বীপে ঘটে এবং প্রায়শই ভুলে যায় যে বেশিরভাগ সংস্থা সিনিয়র সফটওয়্যার ইঞ্জিনিয়ারদের একচেটিয়াভাবে নিয়োগ দেয় না। এটি ঠিক আছে তবে বাকি বাজার কীভাবে তা মনে করে না, এবং আমি এটি প্রমাণ করতে পেরে খুশি: জিআইটি, শেষ চেহারাটিতে বাজারের তিন শতাংশেরও কম ছিল যখন সাবভার্সন পাঁচ মিলিয়ন ব্যবহারকারী এবং প্রায় অর্ধেকের অঞ্চলে রয়েছে সামগ্রিক বাজার।

আমরা যে সমস্যাটি দেখেছি তা হ'ল গিটারনস সাবভারশনটিতে (সস্তা) শট গুলি চালাচ্ছিল। "সাবভারশনটি এতটাই হ'ল [ধীর / কৃপণ / সীমাবদ্ধ / ভালো গন্ধ পাচ্ছে না / মজাদার উপায়ে আমার দিকে তাকিয়ে] এবং এখন আমার জিআইটি আছে এবং [আমার জীবনে সমস্ত কিছু কাজ করে / আমার স্ত্রী গর্ভবতী হয়েছিলেন / পরে আমি একটি বান্ধবী পেয়েছি 30 বছর চেষ্টা করে / আমি ব্ল্যাকজ্যাক টেবিলে ছয়বার দৌড়েছি] আপনি ছবি পেতে।


1
নোট করুন যে ডেভিড রিচার্ডস পক্ষপাতহীন হতে পারে: তিনি যে পণ্যটি তৈরি করেন তা সাবভারশন (বা সাবভার্সন ধারণার ভিত্তিতে) উপর ভিত্তি করে তৈরি হয়, সুতরাং অবশ্যই তিনি সাব-পার্সন এবং গিট-বিরোধী হয়ে থাকবেন।
জাকুব নরবস্কি

2
হাস্যকরভাবে, গিটটি বিশেষভাবে তৈরি করা হয়েছিল কারণ দ্বীপগুলিতে সফ্টওয়্যার ইঞ্জিনিয়ারিং ঘটে না। এই উদ্ধৃতিটি মরোনিক।
বেন কলিন্স

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

এসএনএন ডিট্রেটরসকে মৌলবাদী হিসাবে এঁকে দিয়ে ডেভিড মৌলিক ইস্যুটিকে পাশাপাশি রেখে চলেছেন: সাবভারশন আর্কিটেকচারটি একটি মৃতপ্রায়। এটি যে গিটটি ভিসিএস-এর সর্বশেষ-সর্বশেষ নয়, এটির নিশ্চিত হওয়ার জন্য এটির ওয়ার্ট রয়েছে তবে গিট, মুর্যুরিয়াল, ডার্কস এবং অন্যান্য অনেক ভিসিএসের সমস্তই মূলত আরও মার্জিত সংগ্রহস্থল মডেলগুলি রয়েছে have সাবভারশন কখনই মার্জিংয়ের কাজ করবে না কারণ ডিরেক্টরি == শাখার মডেল প্রকৃত অগ্রগতিটিকে অসম্ভব করে তোলে। ডেভিডের মতো সংস্থাগুলি শূকরগুলিতে আরও বেশি করে লিপস্টিক বানাতে পারে তবে এসএনএন অবশ্যম্ভাবীভাবে আর্টের রাজ্যের থেকে আরও পিছিয়ে পড়বে।
জিডিটি

7

গিট ব্রাঞ্চিং এবং মার্জিংকে সত্যই সহজ করে তোলে। সাবভার্সন ১.২ সবেমাত্র মার্জ ট্র্যাকিং যুক্ত করেছে, তবে গিটটি আরও ভাল। গিট ব্রাঞ্চিং সঙ্গে খুব দ্রুত এবং সস্তা। এটি প্রতিটি নতুন বৈশিষ্ট্যের জন্য একটি শাখা তৈরি করা আরও সম্ভাব্য করে তোলে। ওভার এবং গিট সংগ্রহস্থলগুলি সাবভারশনের তুলনায় স্টোরেজ স্পেসের সাথে খুব দক্ষ।


6

এটি কিছু করার জন্য প্রয়োজনীয় ব্যবহারের সহজ পদক্ষেপ / পদক্ষেপগুলি সম্পর্কে about

আমি যদি আমার পিসি / ল্যাপটপে একটি একক প্রকল্প বিকাশ করি তবে গিটটি আরও ভাল, কারণ এটি সেট আপ করা এবং ব্যবহার করা আরও সহজ। আপনার কোনও সার্ভারের দরকার নেই এবং আপনি যখন মার্জ করবেন তখন আপনার সংগ্রহের URL লিখতে হবে না।

যদি এটি মাত্র ২ জন ছিল তবে আমি বলব গিটটিও আরও সহজ, কারণ আপনি কেবলমাত্র অন্যরকমকে চাপ দিতে এবং টানতে পারেন।

আপনি যদি এর বাইরে চলে যান তবে আমি সাবস্ট্রেশনের দিকে যাব, কারণ সেই সময়ে আপনাকে একটি 'ডেডিকেটেড' সার্ভার বা অবস্থান সেটআপ করতে হবে।

আপনি এসভিএন-এর মতো গিটের পাশাপাশি এটিও করতে পারেন, তবে কেন্দ্রীয় সার্ভারের সাথে সিঙ্ক করার জন্য অতিরিক্ত পদক্ষেপগুলি করার প্রয়োজনে গিটের সুবিধাগুলি ছাড়িয়ে যায়। এসভিএন-এ আপনি কেবল প্রতিশ্রুতিবদ্ধ। গিটে আপনাকে গিট কমিট করতে হবে, তারপরে গিট পুশ করতে হবে। অতিরিক্ত পদক্ষেপটি বিরক্তিকর হয়ে ওঠে কারণ আপনি এত কিছু করে শেষ করেছেন।

এসভিএন এর আরও ভাল জিইউআই সরঞ্জামগুলির সুবিধা রয়েছে, তবে গিট বাস্তুতন্ত্রটি দ্রুত ধরা পড়ছে বলে মনে হচ্ছে, তাই আমি দীর্ঘমেয়াদে এ নিয়ে চিন্তা করব না।


11
গিতে প্রকাশনা থেকে প্রতিশ্রুতিবদ্ধকরণের বিচ্ছেদটি অসুবিধার চেয়ে আইএমএইচও সুবিধা advantage
জাকুব নরবস্কি

ঠিক আছে, সুতরাং কীভাবে আপনি এসভিএন এর জন্য "ব্যবহারের সহজতা / কিছু করার জন্য প্রয়োজনীয় পদক্ষেপগুলি" রেট করবেন যখন: - পরীক্ষার জন্য একটি বিষয় শাখা তৈরি করা - এই শাখাটিকে অন্য একটি শাখায় মার্জ করা - একটি ফাইলের সম্পাদিত স্টাফটিকে তাদের নিজের ছোট ছোট কমিটে বিভক্ত করে - একটি ছোট ফিক্স তৈরি করতে দ্রুত একটি প্রধান শাখা পরীক্ষা করে দেখি IMHO আপনার গিট সার্ভার স্থাপনের চেয়ে কীভাবে এসভিএন সার্ভার স্থাপন করা সহজ is এবং কেন আপনি হালকা ওজনের শাখাগুলি থেকে পাওয়া সমস্ত দুর্দান্ত সুবিধাগুলি ছেড়ে দিতে চান যাতে আপনার "আলাদাভাবে চাপ দিতে হবে না"।
স্যাম

"পরীক্ষার জন্য বিষয় শাখা" যুক্তিটি প্রায়শই গিটের অনুকূলে রাখা হয়, তবে সত্যি কথা বলতে, আমি আসলে কাউকে বাস্তবে কখনও এমনটা করতে দেখিনি যে সাবভার্সন বা অন্য কোনও ডিভিসিএস সিস্টেমের মধ্যে রয়েছে। সম্ভবত এটি একটি বড় ব্যাপার এবং আমরা সবাই মিস করছি, তবে আমি যে 99% বিকাশকারীকে দেখেছি (তার মধ্যে আমি নিজেকে অন্তর্ভুক্ত করেছি) বিষয় শাখাগুলি যত্ন করে না কারণ তারা এগুলি কখনও ব্যবহার করে না! - আপনি যা মিস করেছেন তা মিস করতে পারবেন না :-)। আমি মনে করি ডিভিসিএসের লোকেরা যদি একটি বিষয় হিসাবে "টপিক শাখাগুলি" সামনে রাখে তবে তাদের সবার আগে প্রথমে তাদের বোঝাতে হবে যে এই জাতীয় জিনিসগুলি আসলে কার্যকর actually
অরিওন এডওয়ার্ডস

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

6

ইজি গিতে গিট এবং এসভিএন এর প্রকৃত ব্যবহারের সাথে তুলনা করার একটি সুন্দর পৃষ্ঠা রয়েছে যা আপনাকে এসভিএন এর সাথে তুলনা করে গিট কী কী জিনিসগুলি করতে পারে (বা আরও সহজেই করতে পারে) তার ধারণা দেবে। (প্রযুক্তিগতভাবে, এটি ইজি গিটের উপর ভিত্তি করে, যা গিটের উপরে হালকা ওজনের একটি মোড়ক।)


5

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

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

এই সমস্তগুলি অবশ্যই মানব প্রক্রিয়াগুলির সাথে সম্বোধন করা যেতে পারে; ডিভিসিএস সবেমাত্র এমন কিছু ভেঙেছে যা কিছু নতুন সুবিধা দেওয়ার জন্য কেন্দ্রীয় সংস্করণ নিয়ন্ত্রণ দ্বারা স্থির করা হয়েছিল।


1
আসলে আপনি যদি লিনাক্স কার্নেলের মতো দেখায় বা গিট প্রকল্পটি নিজেই পরিচালিত হয় তবে আপনি দেখতে পাবেন যে গিটটি 'একক রক্ষণাবেক্ষণকারী' (বা রক্ষণাবেক্ষণকারী + লেফটেন্যান্টস) ওয়ার্কফ্লোর জন্য খুব ভাল, একটি কেন্দ্রের conক্যমোট সংগ্রহস্থলের দ্বারা। এবং রক্ষণাবেক্ষণকারী হিসাবে অন্য কারও কাছে সাময়িকভাবে স্যুইচ করা সহজ করে তোলে।
জাকুব নরবস্কি

5

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

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

অবশ্যই এখানে অন্যান্য বেনিফিট রয়েছে যা এখানে অন্যান্য উত্তরে উল্লেখ করা হয়েছে।


4

কয়েকটি উত্তর এগুলিতে ইঙ্গিত করেছে, তবে আমি 2 টি পয়েন্ট সুস্পষ্ট করতে চাই:

1) নির্বাচনী কমিটি করার ক্ষমতা (উদাহরণস্বরূপ, git add --patch )। যদি আপনার ওয়ার্কিং ডিরেক্টরিতে একাধিক পরিবর্তন রয়েছে যা একই যৌক্তিক পরিবর্তনের অংশ নয়, গিট এটি সম্পাদন করা খুব সহজ করে তোলে যার মধ্যে পরিবর্তনের একটি অংশ অন্তর্ভুক্ত থাকে। সাবভারশন সহ, এটি কঠিন।

2) পরিবর্তন জনসাধারণের না করে প্রতিশ্রুতিবদ্ধ ক্ষমতা। সাবভারশনে, যে কোনও প্রতিশ্রুতি তাত্ক্ষণিকভাবে প্রকাশ্য, এবং এইভাবে অপরিবর্তনীয়। এটি বিকাশকারীকে "তাড়াতাড়ি প্রতিশ্রুতিবদ্ধ, প্রায়শই প্রতিশ্রুতিবদ্ধ" করার ক্ষমতা সীমাবদ্ধ করে greatly

গিটটি কেবল একটি ভিসিএসের চেয়ে বেশি নয়; এটি প্যাচগুলি বিকাশের একটি সরঞ্জামও। সাবভার্সন নিছক একটি ভিসিএস।


4
পুনরায় 1) আপনি যদি কচ্ছপ এসভিএন, আনখএসভিএন ইত্যাদি ব্যবহার করেন তবে পরিবর্তনগুলি সহ কোন ফাইলগুলি নির্বাচন করা খুব সহজে (তুচ্ছ) হয়। পুনরায় 2) আপনি যদি অন্য ডেভগুলি আপনার কোডটি না পেতে চান তবে একটি শাখা তৈরি করুন এবং তারপরে প্রস্তুত হওয়ার পরে মার্জ করুন, এটি কঠিন নয়।
si618

অপরিবর্তনীয়? ঠিক আছে আপনি ত্রুটিযুক্ত প্রতিশ্রুতিটি বিপরীত করতে পারেন এবং সংগ্রহস্থলটি আগের মতো ছিল। তবে আপনি ঠিক বলেছেন এটি নথিভুক্ত। তবে এটি ভাল না খারাপ? আমার ধারণা এটি নির্ভর করে ...
schoetbi

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

4

আমি মনে করি সাবভারশনটি ঠিক আছে .. যতক্ষণ না আপনি মার্জ করা শুরু করেন .. বা কোনও জটিল কাজ .. বা সাবভার্সন মনে করেন কিছু জটিল (যেমন কোনও নির্দিষ্ট ফাইলের সাথে কোন শাখা বিভ্রান্ত হয়েছে তা অনুসন্ধান করার জন্য কোয়েরি করা, যেখানে আসলে পরিবর্তন আসে, অনুলিপি এবং পেস্টগুলি সনাক্ত করে ইত্যাদি) ...

আমি বিজয়ী উত্তরের সাথে একমত নই, জিআইটির মূল সুবিধাটি অফলাইন কাজ - এটি অবশ্যই কার্যকর, তবে এটি আমার ব্যবহারের ক্ষেত্রে অতিরিক্ত বাড়ানোর মতো। এসভিকে অফলাইনেও কাজ করতে পারে, এখনও কোনটি আমার শিক্ষার সময়টি বিনিয়োগ করতে হবে তা নিয়ে আমার কাছে কোনও প্রশ্ন নেই)।

এটি কেবলমাত্র এটি অবিশ্বাস্যভাবে শক্তিশালী এবং দ্রুত এবং সর্বোপরি ধারণাগুলির অভ্যস্ত হয়ে উঠেছে - খুব দরকারী (হ্যাঁ, এই অর্থে: ব্যবহারকারী বান্ধব)।

মার্জ হওয়ার গল্পের বিষয়ে আরও তথ্যের জন্য এটি দেখুন: গিট-এসএনএন (বা অনুরূপ) * কেবল * এসএনএন একীভূত করতে সহায়তা করার জন্য?


3

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


3

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

উইন্ডোজ সরঞ্জাম সমর্থন হিসাবে, টরটোইজগিট বেসিকগুলি খুব ভালভাবে পরিচালনা করে তবে আমি লগটি দেখতে না চাইলে আমি কমান্ড লাইনটি পছন্দ করি। প্রতিশ্রুতিবদ্ধ লগগুলি পড়ার সময় কচ্ছপ {গিট | এসভিএন} যেভাবে সহায়তা করে তা আমি সত্যিই পছন্দ করি।


3

এটি জিজ্ঞাসা করা ভুল প্রশ্ন। গিটের ওয়ার্টগুলিতে মনোনিবেশ করা এবং কমপক্ষে কিছু ব্যবহারের ক্ষেত্রে নষ্ট হয়ে যাওয়া অবশ্যই কেন ভাল, সে সম্পর্কে তর্ক তৈরি করা এত সহজ। গিটটি মূলত একটি নিম্ন-স্তরের সংস্করণ নিয়ন্ত্রণ নির্মাণ সেট হিসাবে ডিজাইন করা হয়েছিল এবং একটি বারোক লিনাক্স-বিকাশকারী-ভিত্তিক ইন্টারফেস রয়েছে বলে পবিত্র যুদ্ধগুলি ট্র্যাকশন এবং উপলব্ধিযোগ্য বৈধতা অর্জন সহজ করে তোলে। গিট প্রবক্তারা লক্ষ লক্ষ কর্মপ্রবাহ সুবিধা সহ ড্রামকে বাজায়, যা এসএনএন ছেলেরা অপ্রয়োজনীয় ঘোষণা করে। খুব শীঘ্রই পুরো বিতর্কটি কেন্দ্রীয়ভাবে বনাম বিতরণ হিসাবে ফ্রেম করা হবে যা এন্টারপ্রাইজ এসএনএন সরঞ্জাম সম্প্রদায়ের স্বার্থকে পরিবেশন করে। এই সংস্থাগুলি, যা সাধারণত এন্টারপ্রাইজে সাবভার্সনের শ্রেষ্ঠত্ব সম্পর্কে সবচেয়ে দৃinc়প্রত্যয়ী নিবন্ধগুলি প্রকাশ করে,

তবে এখানে সমস্যাটি রয়েছে: সাবভার্সনটি একটি স্থাপত্যের মৃত-শেষ

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

যে কেউ এখনও সাবভার্সন প্রত্যাশিত ভবিষ্যতের জন্য যথেষ্ট ভাল বিশ্বাস করে তার জন্য আমার হৃদয়-অনুভূতি এবং অজ্ঞাবহ পরামর্শ এখানে রইল:

আরসিএস এবং সিভিএসের ভুল থেকে শিখে আসা ভিসিএসগুলির নতুন জাতগুলি সাবভার্সন কখনই ধরবে না; এগুলি প্রযুক্তিগত অসম্ভবতা না পাওয়া অবধি যদি না তারা স্থলভাগ থেকে সংগ্রহস্থল মডেলটি পুনরায় তৈরি করে, তবে তারপরে এটি সত্যই হবে না এসএনএন? আপনি আধুনিক ভিসিএসের সক্ষমতা কতটুকু মনে করেন না কেন, আপনার অজ্ঞতা আপনাকে সাবভার্সনের ক্ষতি থেকে রক্ষা করবে না, এর মধ্যে অনেকগুলি এমন পরিস্থিতি যা অন্য সিস্টেমে অসম্ভব বা সহজেই সমাধান করা যায়।

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


2

সাবভারশন ব্যবহার করা খুব সহজ। আমি গত বছরগুলিতে কখনও কোনও সমস্যা খুঁজে পাইনি বা প্রত্যাশার মতো কিছু কাজ করে না। এছাড়াও অনেকগুলি দুর্দান্ত জিইউআই সরঞ্জাম রয়েছে এবং এসভিএন সংহতকরণের জন্য সমর্থনটি বড়।

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

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

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

গিটকে আরও কিছু ভাল ডকুমেন্টেশন প্রয়োজন এবং ত্রুটি প্রতিবেদন করা আরও সহায়ক হতে হবে। এছাড়াও বিদ্যমান দরকারী জিইউআইগুলি খুব কমই হয়। এবার আমি বেশিরভাগ গিট বৈশিষ্ট্য (গিট-কোলা) সমর্থন করে লিনাক্সের জন্য কেবলমাত্র 1 জিইউআই পেয়েছি। গ্রহপ ইন্টিগ্রেশন কাজ করছে তবে এটির অফিসিয়াল মুক্তি নেই এবং কোনও অফিসিয়াল আপডেট সাইট নেই (কেবলমাত্র ট্রাঙ্ক থেকে সাময়িক বিল্ড সহ কিছু বাহ্যিক আপডেট সাইট http://www.jgit.org/updates ) সুতরাং এই দিনটি গিটকে ব্যবহার করার সবচেয়ে পছন্দের উপায় কমান্ড লাইন।


2

সোর্সগিয়ারের এরিক সিঙ্ক বিতরণ এবং ননবিস্ট্রিবিউট সংস্করণ নিয়ন্ত্রণ সিস্টেমের মধ্যে পার্থক্য নিয়ে ধারাবাহিক নিবন্ধ লিখেছিল। তিনি সর্বাধিক জনপ্রিয় সংস্করণ নিয়ন্ত্রণ সিস্টেমের উপকারিতা এবং তুলনামূলক তুলনা করেন। খুব আকর্ষণীয় পড়া।
নিবন্ধগুলি তার ব্লগ, www.ericsink.com এ পাওয়া যাবে :


2

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


1

http://subversion.wandisco.com/component/content/article/1/40.html

আমি মনে করি এটি নির্ধারণ করা মোটামুটি নিরাপদ যে বিকাশকারীদের মধ্যে, এসভিএন বনাম among গিট আর্গুমেন্ট আপাতত কিছুকাল ধরে চলছে, যার যার নিজস্ব দৃষ্টিভঙ্গি আরও ভাল। এটি এমনকি 2010 এবং এর বাইরেও সাবভার্সন সম্পর্কিত আমাদের ওয়েবিনারের সময় প্রশ্নগুলির মধ্যে উত্থাপিত হয়েছিল।

আমাদের ওপেন সোর্স ডিরেক্টর এবং সাবভারশন কর্পোরেশনের সভাপতি হায়রাম রাইট অন্যান্য বিতরণযোগ্য সংস্করণ নিয়ন্ত্রণ সিস্টেম (ডিভিসিএস) এর সাথে সাবভার্সন এবং গিটের মধ্যে পার্থক্য সম্পর্কে কথা বলেছেন।

তিনি সাবভার্সনের আসন্ন পরিবর্তনগুলি সম্পর্কেও কথা বলেছেন যেমন ওয়ার্কিং কপি নেক্সট জেনারেশন (ডাব্লুসি-এনজি), যা তাঁর বিশ্বাস বেশ কয়েকটি গিট ব্যবহারকারীকে আবার সাবভার্সনে রূপান্তরিত করবে।

তার ভিডিও দেখুন এবং আমাদের এই ব্লগে মন্তব্য করে বা আমাদের ফোরামে পোস্ট করে আপনি কী মনে করেন তা আমাদের জানান। নিবন্ধকরণ সহজ এবং এক মুহূর্ত সময় লাগবে!


স্পষ্টতই পক্ষপাতদুষ্ট, কারণ তার সরঞ্জামটি সাবভার্সনের উপর ভিত্তি করে। এমনি বলছি.
জাকুব নরবস্কি


1

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


1

প্রথমত, একযোগে সংস্করণ নিয়ন্ত্রণ সমাধান করা সহজ সমস্যা বলে মনে হচ্ছে। এটা মোটেও না। যাই হোক ...

এসভিএন বেশ স্ব-স্বজ্ঞাত। গিট আরও খারাপ। [ব্যঙ্গাত্মক-জল্পনা] এটি কারণ হতে পারে কারণ বিকাশকারীরা, সহবর্তী সংস্করণ নিয়ন্ত্রণের মতো শক্ত সমস্যার মতো, একটি ভাল ইউআই তৈরির ক্ষেত্রে খুব বেশি আগ্রহী নয়। [/ ব্যঙ্গাত্মক-ফটকা]

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


1

আমার কেন মনে হয় সাবট্রিশন গিটের চেয়ে ভাল (অন্তত আমি যে প্রকল্পগুলিতে কাজ করি তার জন্য) মূলত এর ব্যবহারযোগ্যতা এবং সহজ কর্মপ্রবাহের কারণে:

http://www.databasesandlife.com/why-subversion-is-better-than-git/

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