গিট কাঁটাচামচ কি আসলে গিট ক্লোন?


817

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

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

হ্যাঁ না? গিটহাবের উপর কোন ক্রোধ গিটকে এই দিকে বাড়িয়ে দিচ্ছে? বা গিটের কোনও গুজব কার্যকারিতা শোষণ করে?


10
হ্যাঁ, এটি কেবল এক ধরণের ক্লোন যা গিথুব ডেটাবেস দ্বারা ট্র্যাক করা হয়েছে।
পাওলো ইবারম্যান

15
(গিটহাবের নিজস্ব সার্ভারে) স্টোরেজ প্রয়োজনীয়তা দ্বিগুণ করা এড়াতে গিটহাব কি বিশেষ কিছু করে না?
কিথ থম্পসন

18
এখনও উল্লেখ করা হয়নি: একটি ব্যক্তিগত রেপো মোছা এর সমস্ত কাঁটাচামচ মুছে দেয়। পাবলিক রেপো মোছা কাঁটাচামচ রাখে তবে একটি কাঁটাচামচাকে নতুন প্যারেন্ট রেপো হিসাবে প্রচার করে। যদি আপনার বস আপনার পাবলিক রেপোকে ব্যক্তিগত করে তোলে, এটি বিদ্যমান বিদ্যমান কাঁটাচামচগুলি ভেঙে দেয় এবং আপনি তাদের কাছ থেকে ব্যক্তিগত রেপোতে অনুরোধ করতে সক্ষম হবেন না। help.github.com/articles/…
প্লেটো

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

উত্তর:


925

গিটহাব প্রসঙ্গে কাঁটাচামচ , গিটকে প্রসারিত করে না।
এটি কেবল সার্ভার সাইডে ক্লোনকে অনুমতি দেয়।

আপনি যখন আপনার স্থানীয় ওয়ার্কস্টেশনে একটি গিটহাব সংগ্রহস্থলটি ক্লোন করেন, আপনি আপस्ट্রিম সংগ্রহস্থলে ফিরে অবদান রাখতে পারবেন না যদি আপনি স্পষ্টভাবে "অবদানকারী" হিসাবে ঘোষণা না করেন। কারণ আপনার ক্লোনটি সেই প্রকল্পের একটি পৃথক উদাহরণ। আপনি যদি প্রকল্পটিতে অবদান রাখতে চান তবে আপনি এটি করার জন্য দৃking়তা ব্যবহার করতে পারেন, নিম্নলিখিত উপায়ে:

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

" সহযোগী গিটহাব ওয়ার্কফ্লো " পরীক্ষা করে দেখুন " পরীক্ষা করে দেখুন।

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

কাঁটাচামচ এবং উজান

আর গীত 2.20 (Q4 ই 2018) এবং আরো অনেক কিছু দিয়ে, কাঁটাচামচ থেকে আনার সময় আরও দক্ষ হয়, সঙ্গে ব-দ্বীপ দ্বীপ


6
"আপনি যখন নিজের স্থানীয় ওয়ার্কস্টেশনে একটি গিটহাব রেপো ক্লোনিং করছেন, আপনি পরিষ্কারভাবে" অবদানকারী "হিসাবে ঘোষণা না করা পর্যন্ত আপনি আপস্ট্রিম রেপোতে ফিরে অবদান রাখতে পারবেন না।" --- এটি কি "কাঁটাচামচ" দিয়ে সত্য নয়? দয়া করে ব্যাখ্যা করুন.
ছারভে

61
@ টেস্টসুবজেক্ট ৫৮৮৯১ নং, একটি কাঁটাচামচ দিয়ে, এর অর্থ আপনি গিটহাব সার্ভারের পাশে আপস্ট্রি রেপোটিকে নিজের রেপো হিসাবে ক্লোনিং করছেন । তারপরে আপনি স্থানীয়ভাবে আপনার কম্পিউটারে সেই নতুন "কাঁটাচামচ" রেপো ক্লোন করতে পারেন এবং নিঃসন্দেহে এটিতে পিছনে চাপ দিতে পারেন, যেহেতু আপনি সেই কাঁটাচরণের স্রষ্টা এবং মালিক are
ভোনসি

9
আমার কাছে, মূল বক্তব্যটি হ'ল আপনি যদি স্থানীয় হিসাবে অনুলিপি হিসাবে ঘোষণা না করেন তবে আপনার স্থানীয় অনুলিপি থেকে কোনও PR জমা দিতে পারবেন না । আমি আমার স্থানীয় রেপো থেকে পিআর জমা দেওয়ার জন্য খুব অভ্যস্ত, তবে এটি কারণ আমি সর্বদা একজন অবদানকারী হিসাবে চিহ্নিত। আপনি যদি এটির বিষয়ে চিন্তা করেন, পিআর জমা দেওয়ার জন্য আপনাকে একটি শাখা দূরবর্তী রেপোতে চাপতে হবে এবং তারপরে PR তৈরি করতে হবে। আমার ধারণা আপনি যদি এলোমেলো লোকদের আপনার রেপোতে শাখা তৈরি করতে না চান তবে এটি বোধগম্য হবে। এবং আপনি তাদের এটি কাঁটাচামচ করা এবং পরিবর্তে আরআর জমা দিতে পছন্দ করেন।
অ্যাডাম জারনার

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

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

135

আমি লোকেরা শুনছি যে তারা গিটে কোড তৈরি করছে say গিট "কাঁটাচামচ" সন্দেহজনকভাবে গিট "ক্লোন" এর মতো এবং কিছু (অর্থহীন) ভবিষ্যতের সংশ্লেষগুলি ত্যাগ করার মনস্তাত্ত্বিক ইচ্ছার মতো মনে হচ্ছে। গিটে কোন কাঁটাচামচ কমান্ড নেই, তাইনা?

"ফোরকিং" একটি ধারণা, কোনও সংস্করণ নিয়ন্ত্রণ সিস্টেম দ্বারা বিশেষত সমর্থিত কোনও আদেশ নয়।

সহজ ধরণের কাঁটাচামচ শাখার সমার্থক শব্দ। প্রতিবার আপনি আপনার ভিসিএস নির্বিশেষে কোনও শাখা তৈরি করুন, আপনি "কাঁটাচামচ" করেছেন। এই কাঁটাচামচগুলি একসাথে ফিরে একত্রীকরণ করা বেশ সহজ।

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

গিট (গিটহাব নয়) স্থানীয়ভাবে পুরো রেপোকে (যেমন এটি ক্লোনিং করা) কয়েকটি পদ্ধতিতে সমর্থন করে:

  • আপনি ক্লোন করার সময়, একটি রিমোট কল origin হয়
  • ডিফল্টরূপে ক্লোনটির সমস্ত শাখা তাদের ট্র্যাক করবে origin সমতুল্য
  • আপনি যে মূল প্রকল্পটি তৈরি করেছিলেন সেগুলি থেকে পরিবর্তনগুলি আনয়ন এবং মার্জ করা তুচ্ছ সহজ

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

গিথুবকে নিয়ে কোনও ক্রোধ এই দিকটি বাড়িয়ে দিচ্ছেন? বা কার্যকারিতা শোষণকারী গিটের কোনও গুজব?

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


6
আপনার দুর্দান্ত উত্তরের জন্য ধন্যবাদ। আমি কেবল পরিষ্কার করতে চাই, এর অর্থ, গিথুব প্রসঙ্গে আমি X projectআমার মেশিনে কিছু ক্লোন করতে পারি could যদি আমি আমার স্থানীয় পরিবর্তনগুলি করি এবং উত্সটিতে লেখার অ্যাক্সেস না থাকে তবে আমি এই প্রকল্পের লেখককে একটি টান দেওয়ার জন্য অনুরোধ করব will তিনি জিডিয়ন নামে একটি রিমোট তৈরি করবেন যা আমার স্থানীয় ক্লোনটির url হবে এবং সে টানতে পারে, তাই না?
জিদান

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

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

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

80

হ্যাঁ, কাঁটাচামচ একটি ক্লোন। এটি উত্থিত হয়েছে কারণ, আপনি অন্যের অনুলিপিগুলিতে তাদের অনুমতি ছাড়া চাপ দিতে পারবেন না । তারা আপনার ( কাঁটাচামচ ) জন্য একটি অনুলিপি তৈরি করে , যেখানে আপনার লেখার অনুমতিও থাকবে।

ভবিষ্যতে যদি প্রকৃত মালিক বা অন্যরা আপনার পরিবর্তনের মতো কাঁটাচামচযুক্ত ব্যবহারকারীরা এটিকে আবার তাদের নিজস্ব ভাণ্ডারে টানতে পারে। বিকল্পভাবে আপনি তাদের একটি "পুল-অনুরোধ" পাঠাতে পারেন।


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

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

2
@ ক্যাসি, একটি কারণ হ'ল সাধারণত অন্যদের কাছে আপনার ওয়ার্কস্টেশনে ইউআরএল অ্যাক্সেস থাকে না। গিটহাবের forkঅর্থ গিটহাব সার্ভারে আপনার কাজের একটি অনুলিপি রয়েছে যা আপনি করতে pushপারেন এবং অন্যেরা যাতে URL টি অ্যাক্সেস পান যাতে তারা পারে pullpull request(GitHub থেকে পর্যন্ত) তাদের আপনার কপি জন্য URL পেয়ে তাই তারা সহজেই তাদের সংগ্রহস্থলের সেটিকে টান করতে পারেন মাত্র একটি প্রমিত উপায়।
জেসি চিশলম

আমি বিশ্বাস করি এটি সঠিক / গ্রহণযোগ্য উত্তর হওয়া উচিত। এমন দৃশ্যে কোনও গণ্ডগোলের কল্পনা করুন যেখানে ১৫-২০ বিকাশকারীদের একটি দল শাখা তৈরি করে এবং উত্সের দিকে তুলনা করছে বনাম ১৫-২০ বিকাশকারীদের নিজস্ব ভান্ডারগুলির নিজস্ব অনুলিপি রয়েছে এবং আরও অনেকগুলি শাখা তৈরি করছে এবং এটিকে পিছনে ঠেলে দিচ্ছে। তারপরে মূল সংগ্রহস্থলের লেখক কেবল সেগুলি পরিবর্তন করতে পারেন।
কিশোর পওয়ার

37

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


2
সুনির্দিষ্টভাবে: "তাদের কোডের একটি অনুলিপি তৈরি করুন on the GitHub serverযাতে আমি আমার নিজের পরিবর্তনগুলি যুক্ত করতে পারি and others can have URL access to my version"। বেশিরভাগ স্থানীয় ওয়ার্কস্টেশনগুলি কারও কাছে টানতে সক্ষম হওয়ার জন্য URL অ্যাক্সেসের প্রস্তাব দেয় না। তবে আপনি যদি সার্ভারে আপনার কাঁটাচামুতে চাপ দেন তবে তাদের কাছে টানার জন্য URL থাকতে পারে।
জেসি চিশলম

প্রশ্নটি কাঁটাচামচ সম্পর্কে নয়, তবে গিটহাবটি কাঁটাচামচ সম্পর্কে বিশেষভাবে রয়েছে।
রিইনারপোস্ট

26

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


11

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

গিট ক্লোন হ'ল একটি আসল কমান্ড যা ব্যবহারকারীদের উত্সের একটি অনুলিপি পেতে দেয়। গিট ক্লোন [ইউআরএল] এটি আপনার নিজস্ব স্থানীয় ভাণ্ডারে [URL] এর একটি অনুলিপি তৈরি করা উচিত।


10

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


10

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

আপনি কাঁটাচামচকে চাপ দিয়ে, প্রতিশ্রুতিটি লক্ষ্য করে এবং তারপরে মূল সংগ্রহস্থলে গিয়ে এবং প্রতিশ্রুতি আইডি ব্যবহার করে এটি চেষ্টা করতে পারেন, আপনি দেখতে পাবেন যে প্রতিশ্রুতিটি মূল ভান্ডারটিতে "রয়েছে"।

এটি অনেক অর্থবোধ করে, তবে এটি সুস্পষ্ট থেকে দূরে (আমি সম্প্রতি এটি ঘটনাক্রমে আবিষ্কার করেছি)।

জন যখন রিপোজিটরি সুপারপ্রজেক্টকে কাঁটাচামচ করে যা বাস্তবে মনে হয় তা হ'ল উত্স সংগ্রহস্থলের সমস্ত শাখা "জন.মাস্টার", "জন.নেউ_গুই_প্রজেক্ট" ইত্যাদির নামে প্রতিলিপি করা হয় etc.

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

সুতরাং আমার কাঁটাচামচ শাখার "মাস্টার" এর নামটি আসলে "করপোরাল.মাস্টার", তবে গিটহাব ইউআইআই কখনই এটি প্রকাশ করে না, আমাকে কেবল "মাস্টার" দেখিয়ে।

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

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


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

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

প্রকৃতপক্ষে এটি ক্ষেত্রে প্রদর্শিত হবে। সর্বোপরি গিটহাবের পক্ষে আক্ষরিক অর্থে git cloneসম্পূর্ণ নতুন সংগ্রহস্থল (এমনকি "নগ্ন" একটি) প্রতিবার যখন কেউ "কাঁটাচামচ" বোতাম চাপায় - এটি অবিশ্বাস্য বর্জ্য হবে এবং সম্ভবত আক্রমণ ভেক্টরও থাকবে as ।
গ্রেগ এ উডস

7

ক্লোনিংটি সার্ভার থেকে আপনার মেশিনে রয়েছে এবং এ ছাড়াও সার্ভারে নিজেই একটি অনুলিপি তৈরি করা হচ্ছে, একটি গুরুত্বপূর্ণ পার্থক্য হ'ল আমরা যখন ক্লোন করি তখন আমরা আসলে সমস্ত শাখা, লেবেল ইত্যাদি পাই get

কিন্তু যখন আমরা কাঁটাচামচ করি, আমরা আসলে কেবলমাত্র বর্তমান ফাইলগুলি মাস্টার শাখায় পাই, এটি ব্যতীত আর কিছুই নয়। এর অর্থ আমরা অন্যান্য শাখা ইত্যাদি পাই না

সুতরাং আপনাকে যদি কিছু পুনরূদ্ধার করতে পারেন তবে এটি একটি আন্তঃ-সংগ্রহস্থল মার্জ এবং অবশ্যই উচ্চতর সুযোগ-সুবিধার প্রয়োজন হবে।

গিটে কাঁটাচামচ কোনও আদেশ নয়; এটি কেবল একটি ধারণা যা গিটহাব বাস্তবায়ন করে। মনে রাখবেন গিট কোনও মাস্টার অনুলিপি সহ স্টাফের সিঙ্ক্রোনাইজ করার প্রয়োজন ছাড়াই পিয়ার-টু-পিয়ার পরিবেশে কাজ করার জন্য ডিজাইন করা হয়েছিল। সার্ভারটি অন্য এক পিয়ার, তবে আমরা এটিকে মাস্টার অনুলিপি হিসাবে দেখি।


7
তাই না? একটি কাঁটাচামচ সমস্ত শাখা পায়, যদিও আপনাকে কোথায় দেখতে হবে তা জানতে হবে (ইঙ্গিত git branch -a:)।
ট্রিপলি

3

সহজ কথায়,

যখন আপনি বলছেন আপনি কাঁটাচামচ করছেন একটি সংগ্রহালয় আপনি মূলত আপনার GitHub অ্যাকাউন্টে আপনার GitHub আইডি অধীনে মূল সংগ্রহস্থলের একটি অনুলিপি তৈরি করছে।

এবং

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

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