git的推到远程分支后的逆操作
2011-08-01 16:03
330 查看
工作中有时再使用时git push到远程分支后,会发现有些文件是不想推到远程分支上的,所以想取消上一次的git push操作,然后强推去覆盖远程分支上的信息。
做法如下:
1)先git reset --hard清空工作区上的内容。
2)然后再对工作区更改,如果要删除工作区中的文件,要用git rm 命令,而不要用rm命令。
3)重新git add .,add后记住要用git diff --cached或git status查看工作区的状态,不是什么文件都可以提交的。
4)git commit --amend -m "0.01 version for show",本地已经OK,下一步是强推到远程
5)git push origin +master:master就OK了,如果不小心写成git push origin master:master+,那么恭喜你,远程上又多出了一个master+分支,解决方法很简单,
用git push origin :master+就可以把这个远程分支给冲掉了。
如果是在windows eclipse上已推到远程分支然后发现某个过程文件不该修改的情况,在linux上可以这样做:先用git clone ****.git拉到本地,然后git reset --mixed HEAD^ 退到上次提交号,但是源代码改变保留,用git status可以查看工作区情况,用git add xxxfile 把应该修改的文件加上去,用git checkout xxxfile把本不用修改的文件回退到上一版本,
同样是git commit -m "message" 此处不用--amend,此时本地仓库落后远程一次提交,然后强制推到远程,会用当前仓库把远程刚才错误的提交给覆盖掉。
做法如下:
1)先git reset --hard清空工作区上的内容。
2)然后再对工作区更改,如果要删除工作区中的文件,要用git rm 命令,而不要用rm命令。
3)重新git add .,add后记住要用git diff --cached或git status查看工作区的状态,不是什么文件都可以提交的。
4)git commit --amend -m "0.01 version for show",本地已经OK,下一步是强推到远程
5)git push origin +master:master就OK了,如果不小心写成git push origin master:master+,那么恭喜你,远程上又多出了一个master+分支,解决方法很简单,
用git push origin :master+就可以把这个远程分支给冲掉了。
如果是在windows eclipse上已推到远程分支然后发现某个过程文件不该修改的情况,在linux上可以这样做:先用git clone ****.git拉到本地,然后git reset --mixed HEAD^ 退到上次提交号,但是源代码改变保留,用git status可以查看工作区情况,用git add xxxfile 把应该修改的文件加上去,用git checkout xxxfile把本不用修改的文件回退到上一版本,
同样是git commit -m "message" 此处不用--amend,此时本地仓库落后远程一次提交,然后强制推到远程,会用当前仓库把远程刚才错误的提交给覆盖掉。
相关文章推荐
- Git分支管理和远程操作
- git从远程到本地,拉取分支,拉取项目,从其它分支拉取,推送,同步的操作
- git远程分支操作
- Git 创建分支+分支推送+本地切换远程分支+免密码git操作
- git 删除远程主分支及其它操作
- git 删除远程主分支及其它操作
- Git系列:第五篇-分支操作以及关联远程分支
- Git使用手册/Git教程:git branch 分支操作、创建分支、查看分支、删除分支、删除本地分支、删除远程分支
- git 本地新建分支操作功能后与本地master合并,然后提交到远程master
- Git知识总览(六) Git分支中的远程操作实践
- git的操作(拉代码到本地/commit到本地/pull/push到远程/新建分支/合并分支/)
- git对远程分支和tag的操作
- git远程仓库,分支的操作和概念
- git的推到远程分支后的逆操作
- 用安卓Studio操作Git项目管理(包括GitHub和GitChina的项目提交和管理)和各种本地远程分支操作
- Git命令操作远程仓库分支和本地仓库分支
- 32.开源项目--git远程分支基本操作
- Git分支和远程仓库操作(1)
- git对远程分支和tag的操作
- Git操作之克隆某一个特定的远程分支