假设我有一个本地 Git 存储库和一些未提交的更改。因为改动可能会很乱,我还不想提交到我的分支,但我确实想在云端测试一下。
我正在寻找一系列 git 命令,它们可以:
- 将“乱七八糟的改动”提交到另一个分支,例如
mymessydev
git push origin mymessydev
.- 切换回具有相同未提交更改的 master 分支,就好像什么都没发生过一样。
最佳答案
假设您在 master 分支上,然后进行了困惑的更改,
git stash
git checkout -b messybranch
git stash apply
git add .
git commit -m "commit"
git push origin messybranch
git checkout master // clean master
此时,您不会丢失这些更改,因为它们已经推送到 messybranch
上。为了将这些更改返回给 master
,您可以 merge messybranch
或 cherry-pick 在 master
git merge messybranch
或
git cherry-pick #commit
cherry-pick
或 merge
提交您的更改,但如果您希望它们暂存而不是提交,您可以这样做
git reset head~1
关于Git命令将当前文件保存在临时分支中而不提交到master,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48511079/