নতুনদের জন্য গিট: সুনির্দিষ্ট বাস্তব গাইড


854

ঠিক আছে, পিজে হাইয়েটের এই পোস্টটি দেখার পরে , আমি শেষ পর্যন্ত এড়িয়ে গিটের সাথে যাওয়ার সিদ্ধান্ত নিয়েছি ।

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

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

তাই:

ইনস্টলেশন / সেটআপ

কোড নিয়ে কাজ করছেন

ট্যাগিং, ব্রাঞ্চিং, রিলিজ, বেসলাইন

অন্যান্য

অন্যান্য গিট শিক্ষানবিস রেফারেন্স

গিট মধ্যে ডেলিভেশন

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

উত্তর:


118

আপনি কীভাবে একটি নতুন প্রকল্প / সংগ্রহস্থল তৈরি করবেন?

গিট রিপোজিটরি হ'ল একটি ডিরেক্টরি যা একটি বিশেষ .gitডিরেক্টরি থাকে।

এটি "কেন্দ্রীভূত" সংস্করণ-নিয়ন্ত্রণ সিস্টেমগুলি (যেমন সাবভারশন) থেকে পৃথক, যেখানে একটি রিমোট সার্ভারে একটি "সংগ্রহস্থল" হোস্ট করা হয়, যা আপনি checkoutএকটি "ওয়ার্কিং কপি" ডিরেক্টরিতে পরিণত করেছেন। গিটের সাথে, আপনার কাজের অনুলিপি হ'ল ভান্ডার।

git initআপনি যে ডিরেক্টরিটি ট্র্যাক করতে চান সেগুলি কেবল ডিরেক্টরিতে চালান ।

উদাহরণ স্বরূপ,

cd ~/code/project001/
git init

এটি .gitবর্তমান ডিরেক্টরিতে একটি (লুকানো) ফোল্ডার তৈরি করে ।

একটি নতুন প্রকল্প তৈরি করতে, git initঅতিরিক্ত যুক্তি (ডিরেক্টরিটি তৈরি করার নাম) দিয়ে চালান :

git init project002

(This is equivalent to: mkdir project002 && cd project002 && git init)

বর্তমানের পাথটি গিট ভাণ্ডারের মধ্যে রয়েছে git statusকিনা তা খতিয়ে দেখার জন্য কেবল চালান - এটি কোনও সংগ্রহশালা না হলে এটি "মারাত্মক: গিট সংগ্রহস্থল নয়" হিসাবে রিপোর্ট করবে

আপনি .gitডিরেক্টরিটি তালিকাভুক্ত করতে পারেন এবং এটিতে নিম্নলিখিতগুলির মতো ফাইল / ডিরেক্টরি রয়েছে তা পরীক্ষা করতে পারেন:

$ ls .git
HEAD         config       hooks/       objects/
branches/    description  info/        refs/

যদি কোনও কারণে আপনি কোনও ডিপোজিটরি "ডি-গিট" করতে চান (আপনি প্রকল্পটি ট্র্যাক করতে গিট ব্যবহার বন্ধ করতে চান)। সহজেই .gitসংগ্রহস্থলের বেস স্তরে ডিরেক্টরিটি সরান ।

cd ~/code/project001/
rm -rf .git/

সাবধানতা: এটি সমস্ত পুনর্বিবেচনার ইতিহাস, আপনার সমস্ত ট্যাগ এবং সমস্ত কিছু গিটকে ধ্বংস করবে । এটি "বর্তমান" ফাইলগুলিকে স্পর্শ করবে না (আপনি বর্তমানে যে ফাইলগুলি দেখতে পাচ্ছেন) তবে পূর্ববর্তী পরিবর্তনগুলি, মুছে ফেলা ফাইলগুলি এবং অপ্রয়োজনীয় হবে!


3
গিট তার বিষয়গুলি কেবল পঠনযোগ্য করে তোলে, তাই আপনি গিটের rm -rf .gitডেটাবেসটি মুছে ফেলতে চাইবেন ।
জোশ লি

সংস্করণে উপেক্ষা করার জন্য ফাইল / গাছ নির্দিষ্ট করতে সাধারণত ব্যবহারের সময় একটি .gitignore ফাইল তৈরি করা প্রয়োজন, তাই "ডি-গিটিং" এর শেষ অংশটি সম্পর্কে সম্পূর্ণ হওয়ার জন্য, .git অপসারণের পাশাপাশি আপনাকে এছাড়াও অপসারণ করতে হবে। gitignore ফাইল। :)
মনোমোহন

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

git statusআপনি কোনও সংগ্রহস্থলের মধ্যে রয়েছেন তা নিশ্চিত করার জন্য ডাব্লুআরটি চলছে : এটির একটি গ্যাচা রয়েছে: আপনার বর্তমান শেলটিতে যদি পরিবেশের পরিবর্তনশীল $ GIT_DIR সেট থাকে তবে গিটটি আপনার বর্তমান অবস্থানটি উপেক্ষা করবে এবং os GIT_DIR এ সংগ্রহস্থলটি ব্যবহার করবে। আমার জানা উচিত, গতকাল আমি তার এক ঘন্টা হারিয়েছি।
সানিমিগুয়েল

110

গিটের জন্য জিইউআই


গিট জিইউআই

গিট সহ অন্তর্ভুক্ত - git guiকমান্ড লাইন থেকে চালান , এবং উইন্ডোজ এমএসএসজিট ইনস্টলার এটি স্টার্ট মেনুতে যুক্ত করে।

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

আমার প্রিয় বৈশিষ্ট্যগুলির মধ্যে একটি হ'ল ডান-ক্লিক মেনুতে "স্টেজ লাইন" এবং "স্টেজ হঙ্ক" শর্টকাটস, যা আপনাকে কোনও ফাইলের নির্দিষ্ট অংশগুলি প্রতিশ্রুতিবদ্ধ করতে দেয়। আপনি git add -iএটির মাধ্যমে এটি অর্জন করতে পারেন , তবে আমি এটি ব্যবহার করা সহজ বলে মনে করি।

এটি সবচেয়ে সুন্দর অ্যাপ্লিকেশন নয়, তবে এটি প্রায় সমস্ত প্ল্যাটফর্মগুলিতে কাজ করে (টিসিএল / টাকার উপর ভিত্তি করে)

স্ক্রিনশট | একটি স্ক্রিনকাস্ট


GitK

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

গিট-গুইয়ের সাথে সুন্দরভাবে একসাথে যায়।


Gitnub

ম্যাক ওএস এক্স অ্যাপ্লিকেশন। প্রধানত এর সমতুল্য git log, তবে গিথুব (যেমন "নেটওয়ার্ক ভিউ" এর মতো) এর সাথে কিছু সংহত রয়েছে ।

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

ডাউনলোড লিংক, পরিবর্তন লগ এবং স্ক্রীনশটের | গিট সংগ্রহস্থল


GitX

"ওএস এক্সের জন্য গিটক ক্লোন" হওয়ার ইচ্ছে আছে।

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

এটি git-gui/ এর চেয়ে ওএস এক্সে আরও ভাল সংহত হয়েছে gitkএবং ব্যতিক্রমী বড় সংগ্রহস্থল সত্ত্বেও দ্রুত এবং স্থিতিশীল।

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

ডাউনলোড | স্ক্রিনশট | গিট সংগ্রহস্থল | ভাইবার্ড কাঁটাচামচ | লুলন কাঁটা


SmartGit

হোমপেজ থেকে:

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

আপনি তাদের ওয়েবসাইট থেকে এটি ডাউনলোড করতে পারেন ।

ডাউনলোড


TortoiseGit

উইন্ডোজ ব্যবহারকারীদের জন্য কচ্ছপ এসভিএন গিট সংস্করণ।

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

ডাউনলোড


QGit

কিউজিট হ'ল গিট জিইউআই ভিউয়ার যা কিউটি / সি ++ এ নির্মিত।

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

ডাউনলোড


gitg

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

বৈশিষ্ট্য

  • পুনর্বিবেচনার ইতিহাস ব্রাউজ করুন।
  • বড় সংগ্রহস্থলগুলি হ্যান্ডেল করুন (1 সেকেন্ডের নিচে লোড লিনাক্স সংগ্রহস্থল, 17000+ রিভিশন)।
  • পরিবর্তন প্রতিশ্রুতিবদ্ধ।
  • পর্যায় / আনস্টেজ পৃথক কুনি।
  • পরিবর্তনগুলি ফিরিয়ে দিন।
  • সংশোধনগুলিতে পরিবর্তিত বর্ণের ভিন্ন দেখান।
  • প্রদত্ত সংশোধনের জন্য ট্রি ব্রাউজ করুন।
  • প্রদত্ত সংশোধনের গাছের অংশগুলি রফতানি করুন।
  • ইতিহাস তৈরির জন্য 'গিট লগ' এর মতো একটি কমান্ড বুঝতে পারে এমন কোনও রেফস্পেক সরবরাহ করুন।
  • ইতিহাস দর্শনে শাখাগুলির মধ্যে প্রদর্শন এবং স্যুইচ করুন।

ডাউনলোড: প্রকাশ বা উত্স


Gitbox

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

প্রতিদিনের ক্রিয়াকলাপগুলি সহজ: একটি চেকবাক্সের সাথে মঞ্চ এবং স্টেস্টেজ পরিবর্তন। একক ক্লিকের সাথে প্রতিশ্রুতিবদ্ধ, টানুন, মার্জ করুন এবং ধাক্কা দিন। FileMerge.app এর সাথে ভিন্নতা দেখানোর জন্য একটি পরিবর্তনকে ডাবল ক্লিক করুন।

ডাউনলোড


Gity

গিটি ওয়েবসাইটটিতে তেমন তথ্য নেই, তবে সেখানে স্ক্রিনশটগুলি থেকে দেখা যায় এটি একটি বৈশিষ্ট্যযুক্ত সমৃদ্ধ ওপেন সোর্স ওএস এক্স গিট গিও।

ডাউনলোড বা উত্স


মেশানো

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

ডাউনলোডগুলি


কাতানা

স্টিভ ডেকোর্টের একটি গিট জিইউআইফোর্ড ওএসএক্স।

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

1 টি সংগ্রহস্থলের জন্য বিনামূল্যে, আরও 25 ডলার।

ডাউনলোড


স্প্রাউট (আগে গিটম্যাক)

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

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

ডাউনলোড | ওয়েবসাইট


মিনার

ম্যাক ওএসএক্সের জন্য একটি বৈশিষ্ট্য সমৃদ্ধ গিট জিইউআই। 30 দিনের বিনামূল্যে ট্রায়াল, একক-ব্যবহারকারী লাইসেন্সের জন্য 59 মার্কিন ডলার।

ডাউনলোড | ওয়েবসাইট


EGit

EGit গিট সংস্করণ নিয়ন্ত্রণ সিস্টেমের জন্য একটি Elpipse Team সরবরাহকারী। গিট একটি বিতরণকৃত এসসিএম, যার অর্থ প্রতিটি বিকাশকারীদের কোডের প্রতিটি সংশোধনের সমস্ত ইতিহাসের একটি সম্পূর্ণ অনুলিপি থাকে, ইতিহাসের বিরুদ্ধে খুব দ্রুত এবং বহুমুখী প্রশ্ন তৈরি করে।

ইজিট প্রকল্প গিটের জেজিট জাভা প্রয়োগের শীর্ষে এক্লিপস টুলিং প্রয়োগ করছে।

ডাউনলোড | ওয়েবসাইট


গিট এক্সটেনশনস

উইন্ডোজের জন্য ওপেন সোর্স - একক প্যাকেজে গিটের সাথে কাজ করার জন্য আপনার প্রয়োজনীয় সমস্ত কিছু ইনস্টল করে, সহজেই ব্যবহারযোগ্য।

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

ডাউনলোড

গিট গুই স্টাফগুলি সম্পর্কে বিস্তারিত জানার জন্য ডিবিআরকে ধন্যবাদ Big


SourceTree

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

বিশেষজ্ঞ-প্রস্তুত এবং নবী এবং উন্নত ব্যবহারকারী উভয়ের জন্যই বৈশিষ্ট্যযুক্ত:

বহির্গামী এবং আগত পরিবর্তনগুলি পর্যালোচনা করুন। শাখাগুলির মধ্যে চেরি-পিক। প্যাচ হ্যান্ডলিং, রিবেস, স্ট্যাশ / তাক এবং আরও অনেক কিছু।

ডাউনলোড | ওয়েবসাইট



2
আপনার কয়েকটি ভাল উত্তর রয়েছে (বিশেষত গিস্টাস্ট, এবং ধাক্কা / টান উত্তর) তবে আমি কি এটি আলাদা উত্তরগুলিতে বিভক্ত করার পরামর্শ দিতে পারি? প্রশ্নকর্তা আপনাকে অনুরোধ করেছিলেন যে আপনি "একটি উত্তরে একগুচ্ছ তথ্য জ্যাম করার চেষ্টা করবেন না"!
ডিবিআর

3
হতে পারে আপনি TortoiseGit যোগ করা উচিত code.google.com/p/tortoisegit আপনার তালিকাতে, উইন্ডোস gitters জন্য ...
Kret

1
গিটি ( macendeavor.com/gity ) একটি বিকল্প, তবে এটি এখনও বিকাশে রয়েছে (ওএস এক্স)
ডেভ দেলং

2
টাওয়ার ("ম্যাকের জন্য সবচেয়ে শক্তিশালী গিট ক্লায়েন্ট") গিটের জন্য একটি সুন্দর নতুন ক্লায়েন্ট।
রুবিইই

59

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

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


2
আপনি যদি ডিভিসিএস বলে গিট ব্যবহার না করেন তবে গিটটি ব্যবহার করে কেন বিরক্ত করবেন? এই প্রশ্নটি নির্বোধ এবং সংস্থানগুলি সরিয়ে দেয় যা প্রশ্নযুক্ত লক্ষ্য পূরণের জন্য অন্যান্য জিনিসগুলিতে ব্যয় করা যেতে পারে।
র্যান্ডাল শোয়ার্জz

56

ফাইলগুলি উপেক্ষা করার জন্য এটি কীভাবে কনফিগার করবেন:

আপনি যে ফাইলটিকে ট্র্যাক করতে চান না তাতে গিটকে উপেক্ষা করার ক্ষমতাটি খুব কার্যকর।

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

  • একটি ফাঁকা লাইন কোনও ফাইল উপেক্ষা করে না, এটি সাধারণত বিভাজক হিসাবে ব্যবহৃত হয়।
  • # টি স্টারযুক্ত রেখাগুলি মন্তব্য হিসাবে পরিবেশন করে।
  • ! উপসর্গটি isচ্ছিক এবং প্যাটার্নটিকে অস্বীকার করবে। মেলে এমন যে কোনও অবহেলিত প্যাটার্নটি নিম্ন অগ্রাধিকারের ধরণগুলিকে ওভাররাইড করবে।
  • উন্নত এক্সপ্রেশন এবং ওয়াইল্ড কার্ড সমর্থন করে
    • উদাহরণস্বরূপ: প্যাটার্ন: *। [Oa] .o বা .a (অবজেক্ট এবং আর্কাইভ ফাইল) এর শেষে থাকা সংগ্রহস্থলের সমস্ত ফাইল উপেক্ষা করবে
  • যদি কোনও প্যাটার্নে একটি ডিরেক্টরি থাকে যা স্ল্যাশ গিট দিয়ে শেষ হয় কেবল এই ডিরেক্টরিটি এবং এটির নীচে পাথের সাথে মিলবে। এটি ম্যাচ থেকে নিয়মিত ফাইল এবং প্রতীকী লিঙ্কগুলি বাদ দেয়।
  • একটি শীর্ষস্থানীয় স্ল্যাশ সেই পথের নামের সাথে সমস্ত ফাইলের সাথে মিলবে।
    • উদাহরণস্বরূপ : প্যাটার্নটি /*.c ফাইলটি foo.c এর সাথে মিলবে তবে বার / দুর্দান্ত .c

গিটিগনোর (5) ম্যান পৃষ্ঠা থেকে দুর্দান্ত উদাহরণ :

$ git status
[...]
# Untracked files:
[...]
#       Documentation/foo.html
#       Documentation/gitignore.html
#       file.o
#       lib.a
#       src/internal.o
[...]
$ cat .git/info/exclude
  # ignore objects and archives, anywhere in the tree.
  *.[oa]
$ cat Documentation/.gitignore
# ignore generated html files,
*.html
# except foo.html which is maintained by hand
!foo.html
$ git status
[...]
# Untracked files:
[...]
#       Documentation/foo.html
[...]

সাধারণত তালাবিহীন ফাইলগুলিকে উপেক্ষা করার জন্য তিনটি ভিন্ন উপায় রয়েছে।

1) সংগ্রহস্থলের সমস্ত ব্যবহারকারীর জন্য উপেক্ষা করুন:

আপনার কাজের অনুলিপিটির মূলটিতে .gitignore নামে একটি ফাইল যুক্ত করুন ।

আপনার অগ্রাধিকারের সাথে মেলে যা করতে ফাইলগুলিকে অবহেলা করা উচিত / সম্পাদনা করুন। Gitignore সম্পাদনা করুন ।

git add .gitignore 

এবং কাজ শেষ হলে প্রতিশ্রুতিবদ্ধ।

2) কেবলমাত্র আপনার অনুলিপিটির অনুলিপি উপেক্ষা করুন:

আপনার পছন্দসই নিদর্শনগুলি সহ working GIT_DIR / তথ্য / আপনার ফাইলের অনুলিপিটিতে ফাইলটি যুক্ত / সম্পাদনা করুন ।

উদাহরণস্বরূপ: আমার ওয়ার্কিং কপিটি হ'ল ~ / src / प्रोजेक्ट 1 তাই আমি edit / src / પ્રોજેક્ટ 1 / .git / তথ্য / বাদ দিয়ে সম্পাদনা করব

তুমি করেছ!

3) আপনার সিস্টেমে সমস্ত পরিস্থিতিতে উপেক্ষা করুন:

আপনার সিস্টেমের জন্য বিশ্বব্যাপী উপেক্ষা নিদর্শনগুলি আপনি যা ইচ্ছুক তার নামের একটি ফাইলে যেতে পারে।

আমার ব্যক্তিগতভাবে ~ / .gitglobalignore বলা হয়

তারপরে আমি নীচের লাইনের সাথে আমার ~ / .gitconfig ফাইলটি সম্পাদনা করে এই ফাইলটি সম্পর্কে গিটকে জানাতে পারি :

core.excludesfile = ~/.gitglobalignore

তুমি করেছ!

আমি gitignore ম্যান পৃষ্ঠাটি আরও তথ্যের জন্য সেরা উত্স হিসাবে খুঁজে পাই


কেউ কি দয়া করে এই পোস্টটিতে একটি ছোটখাট তবে গুরুত্বপূর্ণ বিশদ যুক্ত করতে পারেন? এটি কেবলমাত্র গিট দ্বারা ট্র্যাক না করা ফাইলগুলির জন্য কাজ করে। ফাইলটি 'আনট্র্যাক' করতে না হলেও ফাইল-সিস্টেমে রেখে দিতে আপনার 'গিট আরএম - ক্যাশেড ফাইলের নাম' দরকার। ধন্যবাদ!
নিকিতা রাইবাক

আমি কেবল লক্ষ করতে চাই যে কোর.এক্সক্লুডসফিল লাইন যুক্ত করা আমার পক্ষে কার্যকর হয়নি। এটির কাজ করতে আমাকে [গিট কনফিগারেশন - গ্লোবাল কোর.এক্সক্লুডসফিল ~ / .gitglobalignore] করতে হয়েছিল।
জেলা কোডিং করুন

গিথুব-এ গিটিগনোর নামে একটি প্রকল্প রয়েছে যেখানে বিভিন্ন ভাষা ও বিকাশের পরিবেশের জন্য গিটিগনোর ফাইল রয়েছে: github.com/github/gitignore
রায়ান লুন্ডি

47

আপনি কীভাবে একটি নির্দিষ্ট সংশোধনী সেট 'ট্যাগ' করেন

আপনি কীভাবে 'চিহ্নিত' 'ট্যাগ' বা 'প্রকাশ' কোনও নির্দিষ্ট সেট ফাইলের জন্য একটি নির্দিষ্ট সংশোধন করতে পারেন যাতে আপনি সর্বদা এটি পরে টানতে পারেন?

git tagকমান্ড ব্যবহার করে ।

কেবলমাত্র বর্তমানের সংশোধনাকে "ট্যাগ" করতে, আপনি কেবল চালাবেন ..

git tag -a thetagname
git tag -a 0.1
git tag -a 2.6.1-rc1 -m 'Released on 01/02/03'

বর্তমান ট্যাগগুলির তালিকা করতে, কেবল git tagকোনও আর্গুমেন্ট ছাড়াই চলুন বা -l(লোয়ার কেস এল):

$ git tag -a thetagname # and enter a message, or use -m 'My tag annotation'
$ git tag -l
thetagname

একটি ট্যাগ মুছতে, আপনি -dপতাকাটি ব্যবহার করুন :

$ git tag -d thetagname 
Deleted tag 'thetagname'
$ git tag
[no output]

একটি নির্দিষ্ট (পূর্ববর্তী) প্রতিশ্রুতি ট্যাগ করতে, আপনি কেবল ..

git tag [tag name] [revision SHA1 hash]

উদাহরণ স্বরূপ:

git tag 1.1.1 81b15a68c6c3e71f72e766931df4e6499990385b

দ্রষ্টব্য: ডিফল্টরূপে, গিট একটি "লাইটওয়েট" ট্যাগ তৈরি করে (মূলত একটি নির্দিষ্ট সংশোধনের রেফারেন্স)। "ডান" -aউপায়টি পতাকাটি ব্যবহার করা । এটি আপনার সম্পাদককে ট্যাগ বার্তা জিজ্ঞাসা করে প্রবর্তন করবে (প্রতিশ্রুতি বার্তা জিজ্ঞাসা করার অনুরূপ, আপনি -mকমান্ড লাইনে ট্যাগ বার্তা সরবরাহ করতে পতাকাটিও ব্যবহার করতে পারেন )। একটি এনোটোটেড ট্যাগ ব্যবহার করে তার নিজস্ব আইডি, তারিখ, ট্যাগার (লেখক) এবং allyচ্ছিকভাবে একটি জিপিজি স্বাক্ষর ( -sট্যাগ ব্যবহার করে ) তৈরি করে একটি বস্তু তৈরি করে । এ সম্পর্কে আরও তথ্যের জন্য, এই পোস্টটি দেখুন

git tag mytagwithmsg -a -m 'This is a tag, with message'

এবং টীকাগুলির সাথে ট্যাগগুলি তালিকা করতে -n1, প্রতিটি ট্যাগ বার্তার 1 লাইন দেখানোর জন্য পতাকাটি ব্যবহার করুন ( -n245প্রতিটি টীকাটির প্রথম 245 লাইন দেখানোর জন্য):

$ git tag -l -n1
mytagwithmsg    This is a tag, with message

আরও তথ্যের জন্য গিট-ট্যাগ (1) ম্যানুয়াল পৃষ্ঠা দেখুন


গিট ট্যাগ ডিফল্টরূপে ট্যাগ তৈরি করে না , কেবল হালকা ওজনের রেফারেন্স। ট্যাগ অবজেক্ট তৈরি করতে আপনাকে অবশ্যই -a বা -s ব্যবহার করতে হবে (যা বর্ণনার মতো জিনিসগুলি ব্যবহার করবে): রকস্টারপ্রগ্রামগ্রাম.অর্গ
২০০৮ /

আহ, আকর্ষণীয়। ধন্যবাদ, আমি উত্তর এই প্রতিফলিত আপডেট করেছি
dbr

এবং আপনি কীভাবে পূর্বে প্রতিশ্রুতিবদ্ধ সংশোধন ট্যাগ করবেন? (দুঃখিত এটি অনেক দীর্ঘ তাই আমি
ঝাঁকুনি

hasen j: মূলত উত্তর দেওয়ার জন্য তথ্য যুক্ত করা হয়েছেgit tag tagname revision_SHA1
dbr

1
দূরবর্তী রেপোতে ট্যাগগুলি ঠেকাতে, গিট পুশ ব্যবহার করার সময় - ট্যাগগুলি যুক্ত করুন (গিথুব সহায়তা অঞ্চল থেকে তথ্য)।
হেক্টর রামোস

46

জিআইটি সহ ওয়ার্কফ্লো উদাহরণ।

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

এই ব্লগ পোস্টটি সুন্দরভাবে একটি খুব সহজ তবে কার্যকর ওয়ার্কফ্লো ব্যাখ্যা করেছে যা গিট ব্যবহার করে সেটআপ করা সত্যিই সহজ।

ব্লগ পোস্ট থেকে উদ্ধৃতি: আমরা উত্স / মাস্টারকে মূল শাখা হিসাবে বিবেচনা করি যেখানে হেডের উত্স কোড সর্বদা উত্পাদন-প্রস্তুত রাষ্ট্রের প্রতিবিম্বিত করে:

কর্মপ্রবাহটি এমন একটি প্রকল্প তৈরি করার পক্ষে যথেষ্ট জনপ্রিয় হয়ে উঠেছে যা এই কর্মপ্রবাহটি প্রয়োগ করে: গিট-প্রবাহ

একটি সাধারণ কর্মপ্রবাহের দুর্দান্ত চিত্রণ, যেখানে আপনি আপনার সমস্ত পরিবর্তন বিকাশে তৈরি করেন এবং কোডটি উত্পাদন অবস্থায় থাকলে কেবলমাত্র মাস্টারকে চাপ দিন:

সাধারণ কর্মপ্রবাহ

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

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

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

গিট ওয়ার্কফ্লো উদাহরণ


আমি গিট নবাগত এবং এই চিত্রটি আমার জন্য আরও বিভ্রান্তিকর করে তোলে ।
ফিনউ

কোনটি, প্রথমটি না শেষটি? আমি পোস্টটি খুব দীর্ঘ করতে চাইনি, তবে আমি পরে উভয় চিত্রের একটি ছোট ব্যাখ্যা যুক্ত করব।
অ্যাশউডস

সম্পূর্ণ নিবন্ধ পড়ুন। আমি এই চিত্রটি দ্বারাও
ফিলিপ সাবিনো

এটা এখন ভাল? আমি কেবল একটি মোটামুটি ওভারভিউ নিখুঁত করতে চেয়েছিলাম, পুরো ব্লগ পোস্টটি এখানে এখানে পুনরায় পোস্ট করতে চাই না :)
অ্যাশউডস

39

এখানে পিজে হিয়েটের পোস্টের একটি অনুলিপি দেওয়া আছে, কারণ এটি আর পাওয়া যায় না:

গিট ইজ নট হার্ড

23 নভেম্বর, 2008

যখন আমরা লোকেদের কেন তাদের সাবট্রিশনের গিট ব্যবহার করা উচিত বলি, তখন লাইনটি হ'ল, "গিট সাবভার্সনের চেয়ে সাবভার্সনকে আরও ভাল করে তবে এটি এর চেয়ে অনেক বেশি কাজ করে।"

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

এটি বলেছিল, গীত ব্যবহার করা আপনাকে থামিয়ে দেওয়ার কিছুই নেই ঠিক যেমন আপনি রূপান্তরকালে সাবভারশন ব্যবহার করেন।

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

$ svn checkout svn://foo.googlecode.com/svn/trunk foo
# make your changes
$ svn commit -m "my first commit"

এবং আপনি কীভাবে এটি গিতে করবেন:

$ git clone git@github.com:pjhyett/foo.git
# make your changes
$ git commit -a -m "my first commit"
$ git push

গিটে এটি ঘটানোর জন্য আরও একটি আদেশ। এই অতিরিক্ত কমান্ডের বিশাল প্রভাব রয়েছে, তবে এই পোস্টের উদ্দেশ্যে, আমরা কেবল একটি অতিরিক্ত কমান্ডের কথা বলছি।

দেখুন, এটি আসলে এতটা কঠিন নয়।

আপডেট: আমি গিটারের তুলনায় সাবভার্সনে আপনার স্থানীয় কপি আপডেট করার সমতুল্য svn updateএবং git pullযথাক্রমে তা উল্লেখ করেও আমি পরিতোষ হব । উভয় ক্ষেত্রেই একটি কমান্ড।


প্রথম উদাহরণে আমি দেখতে পাচ্ছি যে আপনি কোনও আপেক্ষিক পাথ সন্ধান করছেন ./fooতবে গেট ক্লোনটির জন্য কোনও পাথ নির্দিষ্ট করা হয়নি যদিও আপনি কোথায় যাচ্ছেন?
জেডি আইজ্যাকস

33

কীভাবে গিট ইনস্টল করবেন

উইন্ডোজে:

Msysgit ইনস্টল করুন

বেশ কয়েকটি ডাউনলোড রয়েছে:

  • গিট: নীচে অন্য বিকল্পগুলির একটির বিশেষত আপনার প্রয়োজন না হলে এটি ব্যবহার করুন।
  • পোর্টেবলগিট: আপনি যদি সেই পিসিতে ইনস্টল না করে পিসিতে গিট চালাতে চান তবে এটি ব্যবহার করুন (যেমন ইউএসবি ড্রাইভ থেকে গিট চালানো)
  • msysGit: আপনি যদি গিট নিজেই বিকাশ করতে চান তবে এটি ব্যবহার করুন। আপনি যদি কেবলমাত্র আপনার উত্স কোডের জন্য গিট ব্যবহার করতে চান তবে গিটের উত্স কোডটি সম্পাদনা করতে চান না , আপনার এটির দরকার নেই।

এটি একটি সাইগউইন বাশ শেলও ইনস্টল করে, তাই আপনি gitনিসারের শেলটিতে (সেমিডি.এক্সি এর চেয়ে) ব্যবহার করতে পারেন এবং গিট-গুই ( git guiকমান্ডের মাধ্যমে অ্যাক্সেসযোগ্য , বা Start > All Programs > Gitমেনু)

ম্যাক ওএস এক্স

গিট-অক্স-ইনস্টলার ব্যবহার করুন , অথবা আপনি উত্স থেকেও ইনস্টল করতে পারেন

একটি প্যাকেজ ম্যানেজার মাধ্যমে

gitআপনার নেটিভ প্যাকেজ ম্যানেজার ব্যবহার করে ইনস্টল করুন । উদাহরণস্বরূপ, দেবিয়ান (বা উবুন্টু) এ:

apt-get install git-core

অথবা ম্যাক ওএস এক্সে, ম্যাকপোর্টের মাধ্যমে :

sudo port install git-core+bash_completion+doc

... বা ফিঙ্ক:

fink install git

… বা হোমব্রিউ :

brew install git

রেড হ্যাট ভিত্তিক বিতরণগুলিতে যেমন ফেডোরা:

yum install git

সাইগউইনে গিট প্যাকেজটি "ডেভেল" বিভাগের অধীনে পাওয়া যাবে

উত্স থেকে (ম্যাক ওএস এক্স / লিনাক্স / বিএসডি / ইত্যাদি)

ম্যাক ওএস এক্সে আপনার যদি বিকাশকারী সরঞ্জাম ইনস্টল থাকে তবে আপনি খুব সহজেই উত্স থেকে গিটটি সংকলন করতে পারেন। গিটের সর্বশেষ সংস্করণটি একটি হিসাবে .tar.bzবা http://git-scm.com/.tar.gz থেকে ডাউনলোড করুন এবং এটিটি বের করুন (ফাইন্ডারে ডাবল ক্লিক করুন)

লিনাক্স / বিএসডি / ইত্যাদিতে। এটা অনেক একই হতে হবে। উদাহরণস্বরূপ, দেবিয়ান (এবং উবুন্টু) এ আপনাকে build-essentialপ্যাকেজটি ইনস্টল করার প্রয়োজন apt

তারপরে একটি টার্মিনালে, cdযেখানে আপনি ফাইলগুলি বের করেছিলেন (রানিংয়ের cd ~/Downloads/git*/কাজ করা উচিত) এবং তারপরে চালানো হবে ..

./configure && make && sudo make install

এটি গিটটি ডিফল্ট জায়গায় ইনস্টল করবে ( /usr/local- সুতরাং এতে gitথাকবে /usr/local/bin/git)

এটি আপনাকে আপনার পাসওয়ার্ড প্রবেশের জন্য অনুরোধ করবে (এর জন্য sudo), এটি তাই /usr/local/ডিরেক্টরিতে লিখতে পারে যা কেবল "রুট" ব্যবহারকারীর দ্বারা অ্যাক্সেস করতে পারে তাই সুডো প্রয়োজন!

যদি আপনি এটি অন্য কোথাও ইনস্টল করতে চান (সুতরাং গিটের ফাইলগুলি অন্য সরঞ্জামের সাথে মিশ্রিত হয় না), --prefixকনফিগার কমান্ডটি ব্যবহার করুন :

./configure --prefix=/usr/local/gitpath
make
sudo make install

এটি gitবাইনারিটি এতে ইনস্টল করবে /usr/local/bin/gitpath/bin/git- সুতরাং আপনাকে প্রতিবার টাইপ করতে হবে না যে $PATHনিম্নলিখিত বারটি যুক্ত করে আপনারটিতে যুক্ত করা উচিত ~/.profile:

export PATH="${PATH}:/usr/local/bin/gitpath/bin/"

আপনার যদি সুডো অ্যাক্সেস না থাকে তবে আপনি --prefix=/Users/myusername/binনিজের হোম ডিরেক্টরিতে ব্যবহার এবং ইনস্টল করতে পারেন । যোগ ~/bin/করতে মনে রাখবেন$PATH

এক্স-গিট-আপডেট-থেকে-সর্বশেষ সংস্করণটি স্ক্রিপ্টটি এর প্রচুর পরিমাণে স্বয়ংক্রিয়ভাবে কাজ করে:

এই স্ক্রিপ্টটি আমার গিট রেপো (স্থানীয় লোক ) এর ক্লোনিকে আপডেট করে ~/work/track/gitএবং তারপরে কনফিগার করে, ইনস্টল করে (এ /usr/local/git- git describe) এবং /usr/local/gitসিমলিংক আপডেট করে ।

এইভাবে, আমি /usr/local/git/binআমার মধ্যে থাকতে পারি PATHএবং আমি সর্বদা সর্বশেষতম সংস্করণ ব্যবহার করছি।

এই স্ক্রিপ্টের সর্বশেষতম সংস্করণটি ম্যান পৃষ্ঠাগুলি ইনস্টল করে। ডিরেক্টরিটি MANPATHঅন্তর্ভুক্ত করার জন্য আপনার টুইঙ্ক করতে হবে /usr/local/git/share/man


5
উপর ফেডোরা: yum install git। জিইউআই রান জন্য yum install git-gui
ক্রিশ্চিয়ান সিউপিতু

2
ম্যাকে,sudo port install git-core+bash_completion+doc
একমাত্র

আমি ম্যাকের জন্য ফিঙ্ক ডাউনলোড করেছি, তবে ফিংক ইনস্টল গিট চালানো আমাকে ত্রুটি দেয়: "ব্যর্থ: স্পেসিফিকেশন 'গিট' এর জন্য কোনও প্যাকেজ পাওয়া যায়নি!"
কোয়ানো

@ কোয়ানো এটি হওয়া উচিত, pdb.finkproject.org/pdb/package.php/git - চেক ফিঙ্ক সঠিকভাবে আপডেট হয়েছে - আমার মনে হয় fink self-update
দৌড়াদৌড়ি করা

32

গিট রিসেট

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

# Revert to a previous commit by hash:
git-reset --hard <hash>

হ্যাশের পরিবর্তে, আপনি আগের কমিটের শর্টকাট হিসাবে HEAD ^ ব্যবহার করতে পারেন ।

# Revert to previous commit:
git-reset --hard HEAD^

4
এটি অন্যান্য বেশিরভাগ কেন্দ্রীভূত সংস্করণ নিয়ন্ত্রণ সিস্টেমে রিভার্টের এনালগ।
জেরেমি ওয়াল

"it গিট-রিসেট - হ্যার্ড হেড ^" হ'ল মাথার পিতামাতার জন্য শর্টহ্যান্ড হওয়া উচিত (যেমন শেষ প্রতিশ্রুতির আগে পূর্ববর্তী অবস্থা)।
বেন পৃষ্ঠা

6
কেবল একটি সরল git resetপুরাতনকে দুর্ঘটনাক্রমে স্টেস্ট করা উচিতgit add
এসএলএফ

31

আপনি কীভাবে একটি ভাগ করা টিম সংগ্রহস্থল সেট আপ করবেন?

এখানে একটি সাধারণ সংগ্রহস্থল কীভাবে সেট আপ করা যায় তা এখানে বর্ণিত হয়েছে - তবে আপনি কীভাবে একটি দল সংগ্রহস্থল স্থাপন করবেন যা প্রত্যেকে টানতে এবং ঠেকাতে পারে?

একটি ভাগ করা এনএফএস ফাইল সিস্টেম ব্যবহার করে

ধরে নেওয়া আপনার টিমটির ইতিমধ্যে একটি ভাগ করা গোষ্ঠী সদস্যপদ রয়েছে যা ব্যবহার করা যেতে পারে।

mkdir /your/share/folder/project.git
cd /your/share/folder/project.git
newgrp yourteamgroup # if necessary
git init --bare --shared

এই সংগ্রহস্থলটি ব্যবহার শুরু করার জন্য আপনি ইতিমধ্যে ব্যবহার করছেন এমন একটি স্থানীয় সংগ্রহশালাটি থেকে শুরু করা সহজ:

cd your/local/workspace/project
git remote add origin /your/share/folder/project.git
git push origin master

অন্যরা এখন এটি ক্লোন করে কাজ শুরু করতে পারে:

cd your/local/workspace
git clone /your/share/folder/project.git

এসএসএইচ ব্যবহার করে

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

সমস্ত বিকাশকারী যদি এই ভাগ করা সংগ্রহস্থল অ্যাক্সেসের জন্য একই অ্যাকাউন্ট ব্যবহার করে তবে আপনার --sharedউপরের মত বিকল্পটি ব্যবহার করার দরকার নেই ।

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

cd your/local/workspace/project
git remote add origin user@server:/path/to/project.git
git push origin master

উপরের সাথে মিল আছে কি? কেবলমাত্র ঘটনাক্রমে ঘটতে পারে এসএসএইচ হ'ল পাসওয়ার্ড জিজ্ঞাসা করা যদি অ্যাকাউন্টটির পাসওয়ার্ড থাকে। আপনি যদি কোনও পাসওয়ার্ড ছাড়াই কোনও অ্যাকাউন্টে এই প্রম্পটটি পান তবে সম্ভবত এসএসএইচ সার্ভারটি অক্ষম করেছে PermitEmptyPasswords

ক্লোনিং এখন এমন দেখাচ্ছে:

cd your/local/workspace
git clone user@server:/path/to/project.git

এনএফএসের পাশাপাশি - আপনি কীভাবে গিটার সার্ভার সেটআপ করবেন এসএসএসের উপর কাজ করার জন্য? - github.com এর ক্ষুদ্র-স্কেল উদাহরণের মতো?
ড্যাফাইড রিস

প্রাসঙ্গিক ডিরেক্টরিগুলিতে একটি গ্রুপ স্টিকি বিট স্থাপন করা কি প্রয়োজনীয়, বা গিট কি এই সমস্ত কিছুর যত্ন নেয়? যদি দ্বিতীয়টি হয় তবে ইউনিক্স ফাইলগুলির অনুমতিতে কোন গ্রুপটি ব্যবহার করতে হবে তা গিট কীভাবে জানবে?
নরম্যান রামসে

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

কি গিট রেপো-কনফিগারেশন কোর.শ্রেডরপোসিটোরি গ্রুপটি দরকারী?
সিস্টেমে

28

git statusআপনার বন্ধু, প্রায়শই এটি ব্যবহার করুন যেমন প্রশ্নের উত্তর দেওয়ার জন্য ভাল:

  • এই আদেশটি কী করেছিল?
  • আমি কোন শাখা চালু করছি?
  • আমি কী পরিবর্তন করতে চলেছি এবং আমি কি কিছু ভুলে গিয়েছি?
  • আমি এই প্রকল্পে শেষবার (দিন, সপ্তাহ, বা মাস কয়েক আগে) কাজ করার মধ্যবর্তী সময়ে ছিলাম?

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

স্পষ্টতই, যদি আপনার .gitignore বুদ্ধিমানের সাথে কনফিগার করা থাকে তবে এটি আরও বেশি কার্যকর।


27

পরিবর্তনগুলি প্রতিশ্রুতিবদ্ধ

একবার আপনি একটি ফাইল সম্পাদনা করার পরে, আপনার পরিবর্তনগুলি গিটে প্রতিশ্রুতিবদ্ধ করতে হবে। আপনি যখন এই আদেশটি কার্যকর করেন তখন এটি একটি প্রতিশ্রুতিবদ্ধ বার্তার জন্য জিজ্ঞাসা করবে - এটি কেবল একটি সাধারণ পাঠ্য যা আপনাকে কী পরিবর্তন করেছে তা প্রত্যেককে বলে।

$ git commit source/main.c

ডিরেক্টরিতে ফাইলটি মূল.কম ফাইলের প্রতিশ্রুতিবদ্ধ। / উত্স /

$ git commit -a # the -a flag pulls in all modified files

সমস্ত পরিবর্তিত ফাইল (তবে নতুন ফাইল নয়, সেগুলি গিট-অ্যাডের সাথে সূচীতে যুক্ত করা দরকার) প্রতিশ্রুতিবদ্ধ। আপনি যদি কেবলমাত্র কয়েকটি ফাইলই প্রতিশ্রুতিবদ্ধ করতে চান তবে আপনাকে প্রথমে গিট-অ্যাড দিয়ে মঞ্চ তৈরি করতে হবে এবং তারপরে -a পতাকা ছাড়াই প্রতিশ্রুতিবদ্ধ।

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

$ git push <remote> <branch> # push new commits to the <branch> on the <remote> repository

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


27

আপনি কিভাবে শাখা করবেন?

গিট সংগ্রহস্থলে ডিফল্ট শাখা বলা হয় master

একটি নতুন শাখা ব্যবহার তৈরি করতে

git branch <branch-name>

বর্তমান সংগ্রহস্থল প্রকারের সমস্ত শাখার একটি তালিকা দেখতে

git branch

আপনি যদি অন্য একটি শাখায় স্যুইচ করতে চান তবে আপনি ব্যবহার করতে পারেন

git checkout <branch-name>

একটি নতুন শাখা তৈরি করতে এবং এক ধাপে এটিতে স্যুইচ করতে

git checkout -b <branch-name>

একটি শাখা মুছতে, ব্যবহার করুন

git branch -d <branch-name>

বর্তমান শাখা থেকে পরিবর্তনগুলি সহ একটি শাখা তৈরি করতে, করুন

git stash
git stash branch <branch-name>

11
আপনার শর্টকাট গিট চেকআউট-বি </ b >- নাম> উল্লেখ করা উচিত যা একটি শাখা তৈরি করে এবং এটিতে একটি পদক্ষেপে স্যুইচ করে। এটি কোনও শিক্ষানবিস এবং এমনকি উন্নত গিট ব্যবহারকারীর পক্ষে সম্ভবত সবচেয়ে সাধারণ ব্যবহারের কেস case
জেরেমি ওয়াল

21

সর্বশেষ কোড প্রাপ্তি

$ git pull <remote> <branch> # fetches the code and merges it into 
                             # your working directory
$ git fetch <remote> <branch> # fetches the code but does not merge
                              # it into your working directory

$ git pull --tag <remote> <branch> # same as above but fetch tags as well
$ git fetch --tag <remote> <branch> # you get the idea

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



18

গিট যাদু সবই আপনার দরকার ever নিশ্চিত বা আপনার টাকা ফেরত!


14
দীর্ঘশ্বাস, আমি আমার টাকা ফেরত চাই। অসম্পূর্ণ টিউটোরিয়াল (গিটম্যাগিক) == ঘন্টা কাজ সহ বগী সফটওয়্যার (এমএসজিজিট), যা খুব কমই বিনামূল্যে
স্যামগুডি

16

আপনি কিভাবে শাখা মার্জ করবেন?

আপনি যদি একটি শাখা একত্রীকরণ চান (যেমন masterথেকে release), নিশ্চিত করুন যে আপনার বর্তমান শাখা লক্ষ্য শাখা আপনি চান মধ্যে একত্রীকরণ করার জন্য (সময় ব্যবহার করেন git branchবা git statusআপনার বর্তমান শাখা দেখতে)।

তারপরে ব্যবহার করুন

git merge master

( masterআপনি যে শাখার বর্তমান শাখার সাথে একত্রীকরণ করতে চান তার নাম কোথায় )।

যদি কোনও দ্বন্দ্ব থাকে তবে আপনি ব্যবহার করতে পারেন

git diff

মুলতুবি দ্বন্দ্বগুলি সমাধান করতে হবে।


2
গিট মার্জারুল রয়েছে যা আপনার পছন্দের সরঞ্জাম (gvimdiff, kdiff3 বা আরও কিছু) এর সাথে ত্রি-উপায়-পৃথক করে তোলে
ডেভ ভোগ্ট

16

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



12

দূরবর্তী শাখাগুলি কীভাবে ট্র্যাক করবেন

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

# list remote branches
git branch -r

# start tracking one remote branch
git branch --track some_branch origin/some_branch

# change to the branch locally
git checkout some_branch

# make changes and commit them locally
....

# push your changes to the remote repository:
git push

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

আসলে, আপনি ব্যবহার করে সমস্ত প্রত্যন্ত শাখাগুলি git remote show REMOTENAME
তালিকাবদ্ধ


10

আপনি কীভাবে কোনও ফাইলের দুটি সংশোধন বা আপনার বর্তমান ফাইল এবং পূর্ববর্তী পুনর্বিবেচনার তুলনা করবেন?

তুলনা করুন কমান্ড git diff

একটি ফাইলের 2 টি পুনর্বিবেচনার তুলনা করতে:

$ git diff <commit1> <commit2> <file_name>

যা কমিট 2 এর বিপরীতে কমিট 1 পৃথক করে; আপনি যদি অর্ডার পরিবর্তন করেন তবে ফাইলগুলি অন্যভাবে আলাদা হয়, যা আপনি প্রত্যাশা নাও করতে পারেন ...

সংগ্রহস্থলের বিপরীতে বর্তমান স্টেজড ফাইলটির তুলনা করতে:

$ git diff --staged <file_name>

সংগ্রহস্থলের বিপরীতে বর্তমান স্টেস্টেড ফাইলের তুলনা করতে:

$ git diff <file_name>

9

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

স্ট্যাকওভারফ্লোতে, আমি সত্যিই আপনার পছন্দসই কৌশলগুলি দেখতে পছন্দ করব!

আমার, যা আমি সম্প্রতি ইদানিং আবিষ্কার করেছি, তা এখানেgit stash ব্যাখ্যা করা হয়েছে , যা আপনাকে আপনার বর্তমান কাজ বাঁচাতে এবং অন্য একটি শাখায় যেতে সক্ষম করে

সম্পাদনা করুন: পূর্ববর্তী পোস্ট হিসাবে, আপনি যদি সত্যই উইকি হিসাবে পোস্টগুলি সহ স্ট্যাকওর্লো ফর্ম্যাটটি পছন্দ করেন তবে আমি এই উত্তরটি মুছব


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

9

কনসোল UI - টিগ

স্থাপন:

apt-get install tig

ব্যবহার

গিট রেপোর অভ্যন্তরে, ইন্টারেক্টিভ লগ দেখতে 'টাইগ' টাইপ করুন, এর সম্পর্কে আরও তথ্য দেখতে যে কোনও লগটিতে 'এন্টার' চাপুন। সহায়তার জন্য h , যা মূল কার্যকারিতা তালিকাভুক্ত করে।

তুচ্ছ বস্তু

"টিগ" পিছনের দিকে "গিট"।


এটি "কনসোল ইউআই" হওয়া উচিত নয়, যেহেতু "কনসোল" এবং "গ্রাফিকাল" কিছুটা দ্বন্দ্বমূলক?
ডিবিআর

এটি গিট-লগের চেয়ে অনেক বেশি গ্রাফিক্যাল ... তবে এটি অনেক বেশি ইন্টারফেসযোগ্য ...
ডিন

8

আমি কীভাবে একটি দূরবর্তী সংগ্রহস্থলে একটি শাখা তৈরি করতে পারি?

ধরে নিই যে আপনি কোনও একক দূরবর্তী সংগ্রহস্থল থেকে আপনার দূরবর্তী সংগ্রহস্থলটিকে ক্লোন করেছেন।

# create a new branch locally
git branch name_of_branch
git checkout name_of_branch
# edit/add/remove files    
# ... 
# Commit your changes locally
git add fileName
git commit -m Message
# push changes and new branch to remote repository:
git push origin name_of_branch:name_of_branch

11
নাম_ও_ব্রাঞ্চ: নাম_ও_ ব্রাঞ্চ?
Seun Osewa

হ্যাঁ কেন? যতদূর আমি জানি আপনার কেবল প্রয়োজন git push origin name_of_branchএবং শাখাটি ইতিমধ্যে আপনার প্রত্যন্ত অঞ্চলে তৈরি করা হবে
ফিলিপ সাবিনো

প্রথমটির name_of_branchনাম স্থানীয় নাম, দ্বিতীয়টি (পছন্দসই) দূরবর্তী শাখার নাম, তাই local_name_of_branch:remote_name_of_branchআপনি যদি নামগুলি পৃথক করতে চান তবে এটি হতে পারে । আপনি যদি সেগুলি একই চান তবে আপনাকে এখনও এই খ / সি গিটের মতো এটি নির্দিষ্ট করতে হবে যদি আপনি এটি না বলে আপনি নামটি একই রকম চান তা অনুধাবন করে না (এটি করার অন্যান্য পদ্ধতিও রয়েছে, তবে)
জনি

8

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


8

আমি কীভাবে একটি দূরবর্তী সংগ্রহস্থলের একটি শাখা মুছতে পারি?

:শাখার নামের আগে ব্যবহার করে আপনার রিমোটে একটি ধাক্কা দাও

git push origin :mybranchname

হচ্ছে originআপনার রিমোটের নাম এবং mybranchnameশাখার নাম সম্বন্ধীত মুছে ফেলা হবে

http://help.github.com/remotes/


7

পরিবর্তনগুলি টানুন এবং টানুন

সরলীকৃত উপায়ে, শুধু করুন git pushএবং git pull। পরিবর্তনগুলি মার্জ হয়ে গেছে এবং যদি কোনও বিরোধের গিট হয় তবে আপনাকে জানাতে হবে এবং আপনি এটি ম্যানুয়ালি সমাধান করতে পারবেন।

আপনি যখন প্রথম কোনও রিমোট রিপোজিটরিতে যান তখন আপনাকে একটি git push origin master(মাস্টার মাস্টার শাখা হওয়া) করতে হবে। তারপরে আপনি কেবল এটি করেন git push

সাথে ট্যাগ পুশ করুন git push --tags


7

কোড চেক করা হচ্ছে

প্রথমে একটি খালি দিরে যান, এটিকে একটি সংগ্রহস্থল তৈরি করতে "গিট থ্রি" ব্যবহার করুন, তারপরে আপনার নিজের মধ্যে রিমোট রেপো ক্লোন করুন।

git clone user@host.com:/dir/to/repo

আপনি যেখানেই প্রাথমিকভাবে ক্লোন করেছেন সেখানে ডিফল্টরূপে "গিট টান" টানবে।


7
আমি মনে করি ক্লোন আপনার প্রথমে চালনার প্রয়োজনীয়তা অপসারণের জন্য ডিআই পদক্ষেপটি করে does গিট টিআইআইটি বেশিরভাগই প্রথম সংগ্রহস্থল তৈরি করার জন্য বা একাধিক রিমোটসের সাথে বিশেষ কনফিগারেশনের জন্য যা আপনি একটি মানক ক্লোনির চেয়ে আলাদা সেট আপ করতে চান।
জেরেমি ওয়াল

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