github版本回退
2016-07-06 23:43
274 查看
碰到了如下情形:
clone了别人的仓库,然后直接在master分支上做了很多commit,现在发现对方版本里有个bug,怎样才能只提交这个修复bug的commit,而不提交前面的commit?
最后我是这么做的。
1. 新建分支,用来保存当前自己的commit。
2. 在本地,
3. 删掉远程仓库的master分支,这里你可以直接在web上操作,将默认仓库设置成刚刚新建的那个,然后就能删除了。也可以用
4. 删除完以后,将刚刚reset了的本地结果,
5. 这时候,就可以修补bug,然后commit,提PR了。
所以啊,最好不要在master上直接动手脚,要干什么事情,都新建一个分支。所以第5步也不该这么做,更好的方法是基于master版本新建个bug分支。
clone了别人的仓库,然后直接在master分支上做了很多commit,现在发现对方版本里有个bug,怎样才能只提交这个修复bug的commit,而不提交前面的commit?
最后我是这么做的。
1. 新建分支,用来保存当前自己的commit。
2. 在本地,
git reset --hard cm,cm里填你第一次clone的时候的版本。
3. 删掉远程仓库的master分支,这里你可以直接在web上操作,将默认仓库设置成刚刚新建的那个,然后就能删除了。也可以用
git push origin :master,不过这个方法会提示错误,而且我尝试解决未果,于是选择了前一种方法,反正也挺简单。
4. 删除完以后,将刚刚reset了的本地结果,
git push origin master,这样会自动在远程仓库建立一个新的master,而且内容跟你刚clone下来的时候是一样的。
5. 这时候,就可以修补bug,然后commit,提PR了。
所以啊,最好不要在master上直接动手脚,要干什么事情,都新建一个分支。所以第5步也不该这么做,更好的方法是基于master版本新建个bug分支。
相关文章推荐
- 查看github pages文档的方式
- 使用BAE的基于Web.py的简单博客程序
- 两分钟学会如何在github托管代码
- Android自定义View实现仿GitHub的提交活跃表格
- github配置使用指南
- github版本库使用详细图文教程(命令行及图形界面版)
- python使用心得之获得github代码库列表
- C语言实现的轻量级brainfuck语言解释器
- My Machine Learning
- 机器学习---学习首页 3ff0
- 利用GitHook构建持续交付和部署
- Android projects on Github
- git 提交步骤记录(oschina&github)
- github第三方 ios客户端比较推荐:iOctocat? CodeHub?NapCat?
- 本人的一些有用的东西的汇总
- GitHub当道,菜鸟也为Git疯狂
- Git LFS(Large File Storage)