2017-10-20 385 views

回答

0

您可以使用git stash像迪伦说,但它也应该记住,只要你想,你可以提交。您无需立即将该提交推送到远程位置。

当你回到那个分支时,你可以完成你正在做的事情,并使用commit --amend将刚刚完成的工作与前一个提交的内容结合起来。或者,您可以继续正常提交,只是在推动“正在进行中的工作”的位置之前进行互动式重新分配。

0

是的,当每个分支有未提交的作品时,可以在分支之间切换。

但有一点需要注意:如果两个存储器都在两个分支上工作,您应该注意哪个存储器可以应用。详细如下例:

假设你在master分支有未完成的工作,而你想切换到dev分支。然后,您可以使用git stashmaster分支上存储未提交的作品。而在堆栈(git stash list)作为项目:

[email protected]{0} WIP on master: sha-1 message 

然后,你可以切换到dev分支(git checkout dev)并进行更改。如果您还需要切换回master分行,同时保留dev分行的未提交工作。然后,你还可以使用git stash存储上dev分支的变化,堆栈(git stash list)将是:

[email protected]{0} WIP on dev: sha-1 message 
[email protected]{1} WIP on master: sha-1 message 

现在有有两个藏匿的工作原理:

  • 如果你想继续未完成的工作master分支你应该申请工作[email protected]{1}git stash apply [email protected]{1}
  • 如果您想继续dev分公司的未完成工作,请通过git stash apply [email protected]{0}申请工作[email protected]{0}。由于git stash apply默认应用了最新的工作,因此您也可以使用git stash apply将分支上的更改应用于dev

有关git存储的更多细节,可以参考stashing in git book

+0

谢谢@Marina,我会在将来尝试。目前这项工作已经在一个分支上完成。再次感谢。 –

相关问题