tutorial - github login




কেন "গিট স্ট্যাটাস" দেখায় আমি মাস্টার শাখায় আছি এবং "গিট শাখা" একটি নতুন তৈরি হওয়া সংগ্রহস্থলটিতে নেই? (4)

Git ডিফল্ট শাখা master । আপনি যখন জিট করবেন তখন বর্তমান শাখার "ব্যবহার" করবেন। যেহেতু আপনি একটি নতুন সংগ্রহস্থল শুরু করেছেন সেহেতু আপনি "ডিফল্ট" শাখায় আছেন এবং আপনি কেন এটি আপনার শাখায় তালিকাতে দেখেন না, এটি আপনার পরিবর্তনগুলি একবার দেখাতে দেখা যাবে।

আমি একটি প্রক্রিয়া স্বয়ংক্রিয়ভাবে চেষ্টা করছি এবং আমি কোন শাখাটি খুঁজে পাচ্ছি তা জানতে git branch কমান্ডটি ইস্যু করছি। git branch কিছুই ফেরত যেখানে একটি নবীন প্রাথমিকভাবে repo ছাড়া সবকিছু সূক্ষ্ম কাজ করছে। আমি রেপোর সাথে কিছুই করিনি, এমনকি প্রাথমিক কমিটিও না, আমি উত্তরটি স্বীকার করতে পারি। যাইহোক, যদি আমি একটি git status চালাই তবে এটি আমাকে git status যে আমি master শাখায় আছি, যেমন এখানে দেখা হয়েছে:

$ mkdir todelete
$ cd todelete
$ git init
Initialized empty Git repository in /u/u70021a/todelete/.git
$ git status
On branch master

No commits yet

nothing to commit (create/copy files and use "git add" to track)
$ git branch
$

আমি কি ভুল কিছু করছি? আমি কি সঠিকভাবে সেট না করে কিছু সেটিং আছে?

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


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

তবুও, আপনি প্রাথমিকভাবে কিছু শাখায় আছেন। আপনি যে শাখায় আছেন তার নাম বিশেষ নাম HEAD সংরক্ষিত। একটি নতুন, খালি সংগ্রহস্থলের মধ্যে, হিট refs/heads/master master (আরো সঠিকভাবে, refs/heads/master -শাখার পুরো নাম) সঞ্চয় করে, সুতরাং আপনি master হচ্ছেন, master অস্তিত্ব নেই।

আপনি git checkout -b ব্যবহার করে যা অ-বিদ্যমান শাখাটি পরিবর্তন করতে git checkout -b :

$ git init
Initialized empty Git repository in [path]
$ git checkout -b asdf
Switched to a new branch 'asdf'
$ git checkout -b hello
Switched to a new branch 'hello'

যখনই আপনি এমন কোনও শাখায় থাকেন যা বিদ্যমান থাকে না তবে পরবর্তী কমিটি আপনাকে শাখা তৈরি করে। এই কিভাবে git checkout --orphan কাজ করে।


বর্তমান উত্তরগুলি কীভাবে আউটপুট হয় সেটির আক্ষরিক প্রশ্নকে সম্বোধন করে, কিন্তু আমি মনে করি তারা সত্যিকারের সমস্যাগুলির উপর আলোকপাত করেছে ...

আপনি বলেছেন যে আপনি কিছু অটোমেটিক করছেন, তাই আমি সুপারিশ করব যে স্ক্রিপ্টিং প্রেক্ষাপটে কোন git status বা git branch সেরা সরঞ্জাম নয়।

এই আলোচনায় কিছু বিকল্প পাওয়া যেতে পারে: বর্তমান চেক আউট গিট শাখাটি কীভাবে প্রোগ্রাম্যাটিকভাবে নির্ধারণ করবেন

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


শাখা অজাত, এখনো। অতএব git branch এটি দেখায় না ( git symbolic-ref HEAD নির্দেশ করে যে আপনার মাথাটি ডিফল্ট শাখার মাস্টারকে নির্দেশ করছে এবং এটি git branch দেখায় না বলে এটি অজাত হয়, অর্থাৎ, আপনি এমন একটি শাখায় থাকতে পারেন যা না এখনো বিদ্যমান)। যাইহোক, কিছু করছেন শাখা তৈরি হবে।

আপনি যদি একটি orphan শাখা চেক আউট এছাড়াও এই ক্ষেত্রে।

আমি মনে করি git status শাখা নামটি দেখায় কারণ এই শাখাটি তৈরি করা হবে।

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






git