আমি সবসময় চিন্তা করে থাকেন git resetএবং git checkoutএই অর্থে যে উভয় একটি নির্দিষ্ট কমিট প্রকল্প ফিরিয়ে আনতে একই হিসাবে। যাইহোক, আমি অনুভব করি যে তারা একেবারে এক হতে পারে না, এটি অনর্থক হবে। দুজনের মধ্যে আসল পার্থক্য কী? আমি কিছুটা বিভ্রান্ত, কারণ এসএনএনকে কেবল svn coপ্রতিশ্রুতি ফিরিয়ে দিতে হবে।
যোগ করা হয়েছে
ভনসি এবং চার্লস পার্থক্যগুলি git resetএবং git checkoutসত্যই ভালভাবে ব্যাখ্যা করেছিলেন । আমার বর্তমান বোঝাপড়াটি হ'ল git resetসমস্ত পরিবর্তনগুলি একটি নির্দিষ্ট প্রতিশ্রুতিতে ফিরিয়ে দেয়, যেখানে git checkoutকম-বেশি একটি শাখার জন্য প্রস্তুত থাকে। এই বোঝার জন্য আমি নিম্নলিখিত দুটি চিত্রটি বেশ কার্যকর বলে মনে করেছি:

যুক্ত 3
থেকে http://think-like-a-git.net/sections/rebase-from-the-ground-up/using-git-cherry-pick-to-simulate-git-rebase.html , চেকআউট এবং পুনরায় সেট করতে পারেন অনুকরণ রিবেস।
git checkout bar
git reset --hard newbar
git branch -d newbar
-- filesভেরিয়েন্টগুলি সম্পর্কে এটি ঠিক আছে ; আমি নিশ্চিত নই।) এই চিত্রটি এটিকে মূল পার্থক্যের মতো দেখায় যা তারা সূচক বা ডাব্লুডিকে প্রভাবিত করে। যে সম্পর্কে আমার উত্তর দেখুন। দ্বিতীয় এবং তৃতীয় চিত্রগুলি আসল পার্থক্যটি দেখার জন্য খুব সহায়ক। 4 তম এবং 5 ম চিত্রগুলি এই আদেশগুলি কী করে তা আপনি বুঝতে পেরেছেন কিনা তা যাচাই করতে দরকারী, তবে আপনাকে সেখানে পৌঁছাতে সত্যিই সহায়তা করবে না।
think-like-a-git.netডেটা ক্ষতি রোধ করতে অতিরিক্ত পদক্ষেপ (লিঙ্কযুক্ত নিবন্ধে সরবরাহিত ) প্রয়োজন।


