Github提交PullRequest
Github提交PullRequest工作流程:
以Kubernetes为例
1. Fork Kubernetes到自己的Github目录
访问:https://github.com/kubernetes/kubernetes
点击Fork,就可以在自己的Github目录下找到kubernetes这个项目了。
这里以https://github.com/edisonxiang/kubernetes为例。
2. 下载代码到本地工作目录
git clone https://github.com/edisonxiang/kubernetes.git
3. 设置代码的UpStream原始目录
cd kubernetes
git remote add upstream https://github.com/kubernetes/kubernetes.git
# Never push to upstream master
git remote set-url --push upstream no_push
# Confirm that your remotes make sense
git remote -v
4. 在本地获取最新的UpStream版本
cd kubernetes
git fetch upstream
git checkout master
git rebase upstream/master
5. 分支新branch并提交修改(类似OpenStack社区)
cd kubernetes
# Add new branch myfeature
git checkout -b myfeature
# Add Commit Message File
vi .git/message
# Add User Email and User Name
git config --global user.email "xiang.edison@gmail.com"
git config --global user.name "edisonxiang"
# Add or Modify files in kubernetes
......
# 提交到Git本地
git add .
# 完成Commit
添加:git commit -a -F .git/message
修改:git commit --amend -a -F .git/message
修改:git commit -m "Modify some thing"
# 输入Github用户名和密码提交本地的修改到自己的Github项目中
git push -f https://github.com/edisonxiang/kubernetes myfeature
# 更新本地代码到个人仓库
git push origin master
# 删除个人仓库的分支
git push origin :myfeature
# Rebase未合入的PR到个人仓库
git fetch upstream pull/56136/head:BRANCHNAME
# 有时需要将琐碎的多个commit结合起来形成这一个需求的完整commit。
git log 查看下日志,并判断需要将多少个日志合并
git rebase -i HEAD~6 把顶部的六个版本聚到一起进入编辑页面
把需要压缩的日志前面的pick都改为s(squash的缩写)
注意必须保留一个pick,如果将所有的pick都改为了s那就没有合并的载体了就会报如下错误
依次输入CTRL+X Y ENTER三个命令完成编辑。
最后Git Push orgin branchname
# Cancel current local changes
git checkout .
git checkout localfile
6. 访问自己的Github项目创建Pull Request
访问自己的Github地址:https://github.com/edisonxiang/kubernetes
在新上传的Branch上,点击Compare & Pull Request按钮创建一个Pull Requst
最后在https://github.com/kubernetes/kubernetes/pulls就可以找到刚刚提交的Pull Request。
Github提交PullRequest的更多相关文章
- github提交代码时,报permission denied publickey
在像github提交代码时,报permission denied publickey. 查找了一下,可能是因为github的key失效了. 按照以下步骤,重新生成key. ssh-keygen 一路默 ...
- 代码规范、GitHub提交源码的标准 答题人-杨宇杰
1.格式与命名规范1.1 缩进 使用Tab缩进,而不是空格键1.2 换行 每行120字符 if,for,while语句只有单句时,如果该句可能引起阅读混淆,需要用" {"和&quo ...
- 详细介绍如何在win7下首次实现通过Git bash向Github提交项目
详细介绍如何在win7下首次实现通过Git bash向Github提交项目 引自:http://jingpin.jikexueyuan.com/article/35944.html 作者: wddoe ...
- github 提交报403 forbidden的错误解决
github 提交报403 forbidden的错误解决 $ git push error: The requested URL returned error: 403 Forbidden while ...
- 向GitHub 提交你的源代码
之前的这篇文章「Git入门篇」相信大家都已经对 Git 的基本操作熟悉了,但是这篇文章只介绍了对本地 Git 仓库的基本操作,今天我就来介绍下如何跟远程仓库一起协作,教你们向 GitHub 上提交你们 ...
- 使用Android Studio向GitHub提交代码
使用Android Studio向GitHub提交代码 在GitHub上创建一个仓库 填写仓库名称.描述.类型(公有.私有)等信息,点击创建 到此,成功创建了我们的仓库,并且初始化创建了README. ...
- 向Github提交代码时遇到的一些问题
今天分享一下我的一些小经验,那就是向github提交我们的代码.之前一直是直接使用的浏览器完成的代码的下载任务,没有使用过客户端,为了让自己在工作之前熟练使用GitHub,所以就有了下面的这篇博文了. ...
- GitHub 系列之「向GitHub 提交代码」
1.SSH 你拥有了一个 GitHub 账号之后,就可以自由的 clone 或者下载其他项目,也可以创建自己的项目,但是你没法提交代码.仔细想想也知道,肯定不可能随意就能提交代码的,如果随意可以提交代 ...
- Vue.js示例:GitHub提交(watch数据,created钩子,filters过滤); 网格组件(功能:1.检索,2排序);
GitHub提交 codePen: https://codepen.io/chentianwei411/pen/wEVPZo 注意:频繁看案例,可能会被限制. 重点: 表单输入绑定, 单选按钮的使 ...
随机推荐
- Anroid ActionBar 学习资源
Android ActionBar完全解析,使用官方推荐的最佳导航栏(上) http://blog.csdn.net/yuzhiboyi/article/details/32709833 Androi ...
- 使用adb工具调试出现error:device offline
使用adb工具调试设备的时候会出现error:device offline,网上找了很多办法,最后终于解决了. 如果你也遇到这样的问题,先试试简单的办法,不行的话,试试这个..<.< ad ...
- javascript点击兼容所有浏览器封装
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- kvm虚拟化之kvm虚拟机vnc配置
本文是通过vnc方式访问虚拟主机上的KVM虚拟机. 这里的通过vnc方式访问虚拟机不是在kvm虚拟机安装配置vnc服务器,通过虚拟主机的IP地址与端口进行访问,kvm虚拟化对vnc的支持相对来说 ...
- hdu3698 Let the light guide us(dp+线段树)
题意:在每行上选一个点,每个点都要各自对应的代价,同时相邻两行的点要满足 |j-k|≤f(i,j)+f(i+1,k).问最小代价是多少. 题解: 不难发现这是一道dp,状态转移方程如下$dp[i][j ...
- 7,CountDownLatch 与 CyclicBarrier 的 区别
CountDownLatch : 一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待. 用给定的计数 初始化 CountDownLatch.由于调用了 countDo ...
- Postman使用手册2——管理收藏
一.开始使用收藏夹 收藏夹会使你的工作效率更上一层楼 收藏夹可以让单个的request分组在一起,这些request可以被进一步的管理到文件夹来更准确的反应你的API.request也可以在保存到收藏 ...
- freemarker模板跟java代码放在一起
在配置 freemarkerConfig时加上 <property name="templateLoaderPath" value="classpath:hello ...
- 动态sql语句和动态传入参数个数
1.可以将要传入的几个参数封装成一个实体类,然后将实体类作为一个参数传入到相应的方法中,这时候就需要这sqlMapper.xml文件中对传入的字段利用<if test=""& ...
- thinkphp3.2----实现伪静态和路由配置
URL模式: 0.普通 http://localhost/qixin/ThinkCMF(test)_backup/index.php?g=user&m=login&a=index ...