มันจะทำให้รู้สึกถึงการปฏิบัติgit rebase
ในขณะที่รักษา timestamps กระทำ?
ฉันเชื่อว่าผลที่ตามมาก็คือสาขาใหม่จะไม่จำเป็นต้องมีวันที่ตามลำดับเวลา เป็นไปได้ในทางทฤษฎีหรือไม่? (เช่นใช้คำสั่งการวางท่อเพียงแค่อยากรู้อยากเห็นที่นี่)
หากเป็นไปได้ในทางทฤษฎีแล้วมันเป็นไปได้ในทางปฏิบัติกับ rebase ไม่เปลี่ยน timestamps?
ตัวอย่างเช่นสมมติว่าฉันมีต้นไม้ต่อไปนี้:
master <jun 2010>
|
:
:
: oldbranch <feb 1984>
: /
oldcommit <jan 1984>
ตอนนี้ถ้าฉัน rebase oldbranch
บนmaster
วันที่ของการกระทำการเปลี่ยนแปลงจาก feb 1984 ถึงมิถุนายน 2010 มันเป็นไปได้ที่จะเปลี่ยนพฤติกรรมนั้นเพื่อให้การประทับเวลากระทำจะไม่เปลี่ยนแปลง? ในที่สุดฉันก็จะได้รับ:
oldbranch <feb 1984>
/
master <jun 2010>
|
:
มันจะสมเหตุสมผลไหม? มันอนุญาตให้ในคอมไพล์มีประวัติซึ่งการคอมมิชชันเก่ามีการคอมมิทล่าสุดหรือไม่?
git rebase --committer-date-is-author-date SHA
. ดูคำตอบที่แก้ไขของฉันด้านล่าง