git checkout master # first get back to master
git checkout experiment -- app.js # then copy the version of app.js
# from branch "experiment"
একটি ফাইলের পরিবর্তনগুলি কীভাবে পূর্বাবস্থায় আনা যায় তাও গিট দেখুন ?
আগস্ট 2019, গিট 2.23 আপডেট করুন
নতুন git switch
এবং git restore
আদেশগুলি সহ, এটি হবে:
git switch master
git restore -s experiment -- app.js
ডিফল্টরূপে, কেবল কার্যকারী গাছ পুনরুদ্ধার করা হয়।
আপনি যদি সূচকটিও আপডেট করতে চান (অর্থ ফাইলের সামগ্রী পুনরুদ্ধার করুন এবং এটি একটি আদেশে সূচীতে যুক্ত করুন):
git restore -s experiment --staged --worktree -- app.js
# shorter:
git restore -s experiment -WS -- app.js
যেমন জাকুব নরবস্কি মন্তব্যগুলিতে উল্লেখ করেছেন:
git show experiment:path/to/app.js > path/to/app.js
" গিতের নির্দিষ্ট সংশোধন থেকে একটি একক ফাইল কীভাবে পুনরুদ্ধার করবেন? " - এ SO প্রশ্নে বিশদ হিসাবে, এছাড়াও কাজ করে, আপনাকে রেপোর মূল ডিরেক্টরি থেকে পুরো পথটি ব্যবহার করতে হবে।
অতএব তার উদাহরণে জাকুব দ্বারা ব্যবহৃত পথ / টু / অ্যাপ.জেগুলি।
যেমন ফ্রস্টি মন্তব্যে উল্লেখ করেছেন:
আপনি কেবলমাত্র app.js এর সাম্প্রতিকতম অবস্থা পাবেন
তবে, git checkout
বা এর জন্য git show
, আপনি আসলে যে কোনও সংশোধনীটি উল্লেখ করতে পারেন, তাই এসও প্রশ্ন " গিট গুইতে একটি ফাইলের গিট চেকআউট রিভিশন " তে চিত্রিত হিসাবে :
$ git show $REVISION:$FILENAME
$ git checkout $REVISION -- $FILENAME
একই রকম হবে $ ফাইল ফাইল একটি সংস্করণযুক্ত ফাইলের পুরো পথ ।
$REVISION
হিসাবে প্রদর্শিত হতে পারে git rev-parse
:
experiment@{yesterday}:app.js # app.js as it was yesterday
experiment^:app.js # app.js on the first commit parent
experiment@{2}:app.js # app.js two commits ago
ইত্যাদি।
schmijos যোগ মন্তব্য :
আপনি স্ট্যাশ থেকে এটি করতে পারেন:
git checkout stash -- app.js
আপনি যদি দুটি শাখায় কাজ করছেন এবং প্রতিশ্রুতিবদ্ধ না করতে চান তবে এটি খুব কার্যকর।