我有一个从主分支签出的功能分支,其中有一些编辑代码库中的各种文件的提交。但是,我意识到在即将发布的 PR 中,我不想将更改合并到特定文件中,例如
file.java
。如何将 file.java
恢复到以前的状态(从 HEAD),同时创建一个包含文件更新的新分支以供将来使用?
让我们假设在您现在所在的功能分支中,file.java已被编辑。您想要保存这些编辑,但现在您希望 file.java 看起来像功能分支启动之前的样子。然后你可以说:
git branch holdmyplace
git restore --source main -- file.java
现在,当前分支中的 file.java(当您添加和提交时)与签出并处理功能分支之前的
main
中的相同。同时,你有了这个秘密分支holdmyplace
,其file.java的状态是已编辑状态。稍后,您可以在处理其他分支时使用相同的技术从 holdmyplace
复制 file.java。