শাখা পরিবর্তন না করে কোনও ভিন্ন গিট শাখায় একটি ফাইল দেখুন


620

Branch শাখাটি পরীক্ষা না করেই কি গিট শাখায় একটি ফাইল খোলা সম্ভব? কিভাবে?

মূলত আমি সমস্ত সময় শাখা পরিবর্তন না করেই আমার গিথব পৃষ্ঠাগুলিতে একটি ফাইল খুলতে সক্ষম হতে চাই । আমি এটিকে সংশোধন করতে চাই না, কেবল এটি দেখতে চাই।


15
সকল উত্তর আসলে মিস আপনার সাথে ফাইলের সম্পূর্ণ পাথ নির্দিষ্ট করতে হবে git show: stackoverflow.com/questions/610208/... এবং stackoverflow.com/questions/2364147/...
VonC

15
আজকাল, আপনি git show a1b35:./file.txtআপেক্ষিক পাথ ব্যবহার করতে পারেন can
স্টিভ বেনেট

2
@ ভনসি - শাখা-সচেতন ট্যাব সমাপ্তির জন্য শুকরিয়া ধন্যবাদ :)
লুক

আরও আকর্ষণীয় পার্থক্য দেখানো হতে পারেgit diff <other_branch> <path>
সাওমির লেনার্ট

"A1b35" এর সাথে উপরের আপেক্ষিক ফাইল উদাহরণ, এটি শাখার নাম - সুতরাং অবশ্যই নিজের শাখার নামটি সেখানে রাখুন।
লোনরেঞ্জার

উত্তর:


876

এই কাজ করা উচিত:

git show branch:file

যেখানে শাখা যে কোনও রেফ (শাখা, ট্যাগ, হেড, ...) হতে পারে এবং ফাইলটি ফাইলের পুরো পথ। এটি রফতানি করতে আপনি ব্যবহার করতে পারেন

git show branch:file > exported_file

এছাড়াও আপনি হওয়া উচিত VonC এর কিছু সংশ্লিষ্ট প্রশ্নের উত্তর:

আপডেট 2015-01-19:

আজকাল আপনি এর সাথে আপেক্ষিক পাথ ব্যবহার করতে পারেন git show a1b35:./file.txt


22
এবং আপনি ভিএম-তেও ফাইলটি উন্মুক্ত করতে পারেন: git show branch:file | vim -"" | "পাইপ এবং ভিএম কমান্ডের পরে vim -
চলার ড্যাশটি দেখুন

3
@GregBurghardt কি আমার জন্য কাজ করে অনুরূপ কিছুvim -c "set syntax=html" -
raphaëλ

2
আমি আশা করি আমি এই উত্তরটি একাধিকবার উত্সর্গ করতে পারলাম, সত্যই।
ভিনসেন্ট ফোরমন্ড

2
এটি কেবল স্থানীয় শাখা দেখায়, এটি সার্ভারে সমস্ত শাখা প্রদর্শন করে না
উইলিয়াম এন্টারিকেন

3
@ ফুলডিসেন্ট, আমি এটি origin/my_remote_branchদিয়ে সূক্ষ্ম ব্যবহার করতে সক্ষম হয়েছি । বা আপনি প্রকৃত সার্ভার সংস্করণ বোঝাতে চান? আপনি যদি এটি চান তবে আপনার git fetchপ্রথমে দরকার ।
rsmith54

53
git show somebranch:path/to/your/file

আপনি একাধিক ফাইলও করতে পারেন এবং এগুলিকে একত্রীকরণ করতে পারেন:

git show branchA~10:fileA branchB^^:fileB

আপনাকে ফাইলটির পুরো পথ সরবরাহ করতে হবে না, আপেক্ষিক পাথ গ্রহণযোগ্য যেমন:

git show branchA~10:../src/hello.c

আপনি যদি স্থানীয় ডিরেক্টরিতে ফাইলটি পেতে চান (কেবলমাত্র একটি ফাইলকে ফিরিয়ে দিন) আপনি চেকআউট করতে পারেন:

git checkout somebranch^^^ -- path/to/file

38

একটি ফাইল git gui browser <branch>সন্ধানের জন্য একটি সহজ, নবাগত বন্ধুত্বপূর্ণ উপায়: যা আপনাকে যে কোনও ফাইলের বিষয়বস্তু অন্বেষণ করতে দেয়।

এটি ফাইল মেনুতেও রয়েছে git gui। সর্বাধিক অন্যান্য - আরও উন্নত- জিইউআই মোড়কগুলি (কিউজিট, ডিম, ইত্যাদি)) পাশাপাশি ব্রাউজিং / ফাইল খোলার প্রস্তাব দেয়।


এই কমান্ডের ফলাফল "Git: 'GUI' একটি Git কমান্ড না দেখতে 'Git --help' আমি একটি নবাগত আছি; কী হচ্ছে।।?
স্কট বিগস

2
এটি আসলে কাজ করে (আমার আশ্চর্য হয়ে), git-scm.com/docs/git-gui দেখুন - আমি গিট সংস্করণ 2.5.2.windows.1 ব্যবহার করি
14

এই উত্তরটি খুব সহায়ক ছিল! ধন্যবাদ। উইন্ডোতে গিট ব্যাশ ব্যবহার করে আইএম উল্লেখ করা উচিত।
মার্জার

গিট গুই হিসাবে রেঞ্জার ব্যবহার করা কি সম্ভব?
তীব্র

1
@ স্কটবিগগুলি আপনি নবাগত নন, আপনি একটি নন স্ট্যান্ডার্ড সেটআপ ব্যবহার করছেন।
অশ্নুর

20

আপনি যদি ইমাস ব্যবহার করছেন তবে আপনি যে C-x v ~ফাইলটি সম্পাদনা করছেন তার আলাদা সংস্করণ দেখতে আপনি টাইপ করতে পারেন (ট্যাগ, শাখা এবং সমস্ত কাজ হ্যাশ)।


ভিমে এটি পাওয়ার কোনও উপায় আছে কি? (আমি প্ল্যাগ-ইনগুলি জন্য উন্মুক্ত আছি।)
NHDaly

4

আপনার ~/.gitconfigফাইলে নিম্নলিখিতগুলি যুক্ত করুন

[alias]
  cat = "!git show \"$1:$2\" #"

এবং তারপরে এটি চেষ্টা করুন

git cat BRANCHNAME FILEPATH

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


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