আমি কীভাবে প্রথম প্রতিশ্রুতি পুনরুদ্ধার করব?


128

আমি git initএকটি তাজা রেপো তৈরি করতাম , তারপরে তিনটি কমিট করতাম । এখন আমি ফিরে যেতে চাই এবং আমার প্রথম প্রতিশ্রুতি সংশোধন করতে চাই, তবে আমি যদি git rebase -i HEAD~3এটির অভিযোগ করি! যদি আমি একইরকম চেষ্টা করি HEAD~2তবে এটি কিন্ডা কাজ করে তবে কেবলমাত্র আমাকে শেষ দুটি কমিটি পুনরায় সাজানোর সুযোগ দেয়।

আমি 'কমিট করার আগে কমিট' কীভাবে উল্লেখ করব বা ফিরে গিয়ে খালি কমিট ?ুকিয়ে দেব?


উত্তর:


215

সাম্প্রতিক পর্যায়ে যথেষ্ট গিট সহ সহজ উপায় (এটি এখন দীর্ঘকাল ধরে চলেছে সুতরাং আপনার এটি হওয়া উচিত):

git rebase -i --root

অন্য সহজ উপায়, যেমন টোভলবার্গ একটি মন্তব্যে উল্লিখিত হয়েছে , তা হল git checkout --orphanএকটি নতুন মূল প্রতিশ্রুতিবদ্ধতা স্থাপনের জন্য সেট আপ করা, যা আপনি উপরের পুরানো অঙ্গীকারগুলি অনুলিপি করতে পারেন। ( rebase -i --rootযাইহোক যাইহোক অভ্যন্তরীণভাবে এটি শেষ হয় ends)


ব্যবহার git rebase -i --rootআমি ভুল পান error: cannot 'fixup' without a previous commitযখন স্কোয়াশ দ্বিতীয় কমিট প্রয়াস (আমি শুধুমাত্র প্রথম চান)
mikemaccana

আপনি নির্দেশ পত্রকে ঠিক কী সম্পাদনা করছেন? আপনার কাছে শীর্ষে প্রাচীনতম সহ কমিটের একটি তালিকা থাকা উচিত এবং pickপ্রত্যেকটির জন্য কমান্ড । দ্বিতীয়টি pick হয় squashবা তে পরিবর্তন করুন fixup, নির্দেশ পত্রটি লিখুন, আপনার সম্পাদক থেকে প্রস্থান করুন এবং গিটকে কাজটি করা উচিত।
21
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.