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 squash来整理压缩message。

  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的更多相关文章

  1. github提交代码时,报permission denied publickey

    在像github提交代码时,报permission denied publickey. 查找了一下,可能是因为github的key失效了. 按照以下步骤,重新生成key. ssh-keygen 一路默 ...

  2. 代码规范、GitHub提交源码的标准 答题人-杨宇杰

    1.格式与命名规范1.1 缩进 使用Tab缩进,而不是空格键1.2 换行 每行120字符 if,for,while语句只有单句时,如果该句可能引起阅读混淆,需要用" {"和&quo ...

  3. 详细介绍如何在win7下首次实现通过Git bash向Github提交项目

    详细介绍如何在win7下首次实现通过Git bash向Github提交项目 引自:http://jingpin.jikexueyuan.com/article/35944.html 作者: wddoe ...

  4. github 提交报403 forbidden的错误解决

    github 提交报403 forbidden的错误解决 $ git push error: The requested URL returned error: 403 Forbidden while ...

  5. 向GitHub 提交你的源代码

    之前的这篇文章「Git入门篇」相信大家都已经对 Git 的基本操作熟悉了,但是这篇文章只介绍了对本地 Git 仓库的基本操作,今天我就来介绍下如何跟远程仓库一起协作,教你们向 GitHub 上提交你们 ...

  6. 使用Android Studio向GitHub提交代码

    使用Android Studio向GitHub提交代码 在GitHub上创建一个仓库 填写仓库名称.描述.类型(公有.私有)等信息,点击创建 到此,成功创建了我们的仓库,并且初始化创建了README. ...

  7. 向Github提交代码时遇到的一些问题

    今天分享一下我的一些小经验,那就是向github提交我们的代码.之前一直是直接使用的浏览器完成的代码的下载任务,没有使用过客户端,为了让自己在工作之前熟练使用GitHub,所以就有了下面的这篇博文了. ...

  8. GitHub 系列之「向GitHub 提交代码」

    1.SSH 你拥有了一个 GitHub 账号之后,就可以自由的 clone 或者下载其他项目,也可以创建自己的项目,但是你没法提交代码.仔细想想也知道,肯定不可能随意就能提交代码的,如果随意可以提交代 ...

  9. Vue.js示例:GitHub提交(watch数据,created钩子,filters过滤); 网格组件(功能:1.检索,2排序);

    GitHub提交 codePen:   https://codepen.io/chentianwei411/pen/wEVPZo 注意:频繁看案例,可能会被限制. 重点: 表单输入绑定, 单选按钮的使 ...

随机推荐

  1. 敏捷软件开发:原则、模式与实践——第13章 写给C#程序员的UML概述

    第13章 写给C#程序员的UML概述 UML包含3类主要的图示.静态图(static diagram)描述了类.对象.数据结构以及它们之间的关系,藉此表现出了软件元素间那些不变的逻辑结构.动态图(dy ...

  2. Elasticsearch5.6.8 安装问题集锦

    今天在内部linux环境安装Elasticsearch5.6.8时遇到一些问题,主要如下 使用Elasticsearch5.6.8 必须安装jdk1.8 [elsearch@vm-mysteel-dc ...

  3. el判断字符串是否为空

    ${empty 值}  返回true ,表示为空字符串; 在EL中empty对""和null的处理都返回true,而==null对""返回false,对null ...

  4. Android-ContentProvider简单的增删改查

    注意:在ContentProvider里面写对数据库增删改查的时候,千万不能 db.close();  cursor.close(); 等操作,不然其他应用访问不到数据,也没有必要写isOpen(); ...

  5. 折腾了两天的跨站脚本提交问题,与IIS7有关

    根据这里提供的方法,本地测试通过没有问题,但是部署到服务器上之后,只有GET请求可以跨站提交,POST请求继续报错,折腾了两天之后觉得,是不是IIS7的问题?果然,找到了这篇文章,照做之后解决.

  6. NLP常用开源/免费工具

    一些常见的NLP任务的开源/免费工具, *Computational Linguistics ToolboxCLT http://complingone.georgetown.edu/~linguis ...

  7. ASP.NET MVC ActionFilterAttribute用法

  8. Linux使用私钥公钥(Public key)登录 - 免密码登录

    为了更安全.方便的登录Linux服务器,可以取消密码登录,使用私钥公钥的方式来登录,更方便也更安全. 生成密钥 借助Xshell可以很方便的生成和管理私钥,点击工具菜单,选择新建用户密钥生成向导: 直 ...

  9. Windows上传文件到linux 使用winscp

    Windows上传文件到linux 使用winscp, winscp下载目录 https://sourceforge.net/projects/winscp/postdownload?source=d ...

  10. 启动redis一闪就关

    解决方法:1-win+R 打开命令行2-cd至redis目录,例如 D:\redis>3-输入 redis-server.exe redis.windows.conf观察是否如图1:至此,已成功 ...