我一直在为一个项目工作。今天我正在尝试使用特定于Windows的wchar
,我需要在早上改变很多代码,最后我得到了一个丑陋的混乱。我可以清除后者,但现在我需要在最后一次工作提交上做一些主流工作。但我不想放松这项工作。那么如何将这项工作保留在某个分支中以备将来使用我的工作区恢复到上一次提交呢?
答案 0 :(得分:2)
您可以创建一个新分支并将更改提交给它:
git checkout -b topic/ugly-mess
git commit -a -m 'Checkpointing mess.'
然后回到你的主流分支,它有最后一个工作提交:
git checkout master
如果您希望在上游发布“本地混乱”,请推送分支:
git push origin topic/ugly-mess
答案 1 :(得分:1)
只需创建一个新分支
git branch -b wchar_migration
并将更改提交到其中
git commit -am "wchar ..."
然后回到你的工作
git checkout master
如果以后要包含您在master上进行的修改,只需在其上进行修改。
git co wchar_migration
git rebase master
答案 2 :(得分:0)
你可能甚至不需要分支。如果你使用git stash
,git stashes(存储)当前的“脏”工作区并返回一个干净的工作区。如果需要,您可以稍后apply
隐藏更改。
答案 3 :(得分:0)
只要你没有投入任何这项工作,你就可以随时git stash
进行实验。
但是你已经将其描述为 experimental ,所以另一种选择,也许是更好的选择,就是将这项工作保留在它自己的分支中,例如git checkout -b wcharExperiment
,将工作提交到这个新分支,然后签出您的主分支。