
// branch: master content-of-master // branch: issue-53 content-of-master-and-addition-of-issue-53 现在我从 issue-53 切换回 master, 想回到原来干净的工作区( working directory ), 是执行 reset 吗?
1 wqshare 2020-01-13 11:19:38 +08:00 git reset --hard HEAD |
2 sbw 2020-01-13 11:20:22 +08:00 commit 到第二个分支然后 checkout 回去,或者直接 checkout 回去然后 checkout -- . 撤销修改或者 stash push 保存临时修改再 checkout 回去或者 checkout 回去再 reset 再 checkout -- . |
3 fzhyzamt 2020-01-13 11:22:00 +08:00 是在 issue-53 写的代码,没有提交,然后切换到 master 分支吗? 如果不想要这些代码,git reset --hard HEAD,注意这是个无法回滚的操作,谨慎执行 或者暂存起来 git stash save |
4 wqshare 2020-01-13 11:22:20 +08:00 上面是重置已加入版本管理的文件,对于没有加入的文件,比如一些临时文件等,再加上:git clean -d -x -f (加上-n 可以预览) |
5 xiaoming1992 OP @fzhyzamt 已经提交了,但是切换回 master 分支后,希望在工作区移除这些新增的内容,让 master 的工作区回复到原来的状态 |
6 msg7086 2020-01-13 11:43:33 +08:00 你去其他分支的时候,原分支管理的文件本来就会被替换 / 删除掉,不需要手动移除。 只有未受管理的文件才会留下。 |
7 zyq2280539 2020-01-13 11:46:52 +08:00 git pull --rebase git reset --hard git clean -d -f |
8 xiaoming1992 OP |
9 KuroNekoFan 2020-01-13 12:10:52 +08:00 我看了下你的问题,多数都在 StackOverflow 上有现成的回答 |
10 dswyzx 2020-01-13 12:33:44 +08:00 git stash 贮藏了解一下. 将本地不想提交的或者暂时搞一半的暂存起来 git reset 是不能恢复的.不要轻易使用 |
11 xiaoming1992 OP @KuroNekoFan #9 我看了下你的问题,多数都在 StackOverflow 上有现成的回答 我创建的主题一共有 40 个左右,我感觉除了本问题和 [浏览器是怎么处理.html 文件的缓存的] ,我的其他问题不怎么符合 [在 StackOverflow 上有现成的回答] 吧? |
12 hlx 2020-01-13 14:52:33 +08:00 只要是 commit 过的都不会丢嘎, 所以随便 reset --hard, 不行 git reflog 找回嘎 |
13 hlx 2020-01-13 14:55:42 +08:00 |
14 hlx 2020-01-13 14:59:25 +08:00 |
17 SjwNo1 2020-01-13 15:48:08 +08:00 切回到 master 貌似不会影响 |
18 一般 moving HEAD 不用做任何事情 只有两个 HEAD 的 gitignore 不一致的时候可能会导致切分支后不干净 那么如果那些遗留的内容确认是不重要的话, 可以使用 clean -f -d 清理 |