1
geelaw 256 天前 via iPhone
git add -f path/to/file
|
2
geelaw 256 天前 via iPhone 1
要加到旧 commit 里面(“所有”版本控制作此理解的话)的话,先 git checkout -b new old_commit 然后把 new 调整到你希望的状态,再 git checkout -b new2 previous_current 再 git rebase new 。
当然如果希望新的历史还时刻反映忘记版本控制的文件在创造旧历史期间的变化,那当然无法自动完成,因为这些信息已经丢掉了,可以如上,但每个旧历史的 commit 都 cherry-pick 再修改到你希望的状态。 还有一种是在当前的 commit 上继续产生数个 commits ,用来表达对每个旧版的修正,然后 git rebase -i 重排、合并让历史看起来完美。 |