// 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
SoloCompany 2020-01-13 21:08:32 +08:00
一般 moving HEAD 不用做任何事情
只有两个 HEAD 的 gitignore 不一致的时候可能会导致切分支后不干净 那么如果那些遗留的内容确认是不重要的话, 可以使用 clean -f -d 清理 |