เพื่อให้การเปลี่ยนแปลงปัจจุบันของคุณ
คุณสามารถทำให้งานของคุณสะดุดโดยไม่ต้องไปทำอะไรกับgit stash
มัน คุณต้องการใช้git stash pop
เพื่อรับคืน หรือคุณสามารถ (ตามที่carleetoกล่าว) git commit
ไปยังสาขาแยก
ชำระเงินตามวันที่โดยใช้การแยกวิเคราะห์
คุณสามารถชำระเงินการส่งมอบตามวันที่ระบุโดยใช้rev-parse
สิ่งนี้:
git checkout 'master@{1979-02-26 18:30:00}'
git-rev-parse
รายละเอียดเพิ่มเติมเกี่ยวกับตัวเลือกที่สามารถพบได้ใน
ตามที่ระบุไว้ในความคิดเห็นวิธีนี้ใช้ reflog เพื่อค้นหาการกระทำในประวัติศาสตร์ของคุณ โดยค่าเริ่มต้นรายการเหล่านี้จะหมดอายุหลังจาก 90 วัน แม้ว่าไวยากรณ์สำหรับการใช้ reflog จะน้อยกว่าคุณสามารถย้อนกลับไป 90 วันเท่านั้น
ชำระเงินตามวันที่โดยใช้รายการ rev
ตัวเลือกอื่น ๆ ซึ่งไม่ได้ใช้ reflog คือการใช้rev-list
เพื่อรับการกระทำ ณ เวลาใดเวลาหนึ่งด้วย:
git checkout `git rev-list -n 1 --first-parent --before="2009-07-27 13:37" master`
จดบันทึก--first-parentหากคุณต้องการให้มีเพียงประวัติของคุณเท่านั้นและไม่ใช่เวอร์ชันที่รวมเข้าด้วยกัน นั่นคือสิ่งที่คุณมักต้องการ
git bisect good
จุดเริ่มต้นของคุณ