一直对git的使用都不熟,由于工作需要经常需要在github上pull request,第一次还是有些麻烦的,写个笔记记录下

1. fork源项目到自己的github仓库中

fork之后自己也会多出一个一样的Repository

2.将自己Github上的Repository 拉到本地

2.1 本地电脑安装git for windows(略)

2.2 进入git

右键电脑桌面,会多出一个Git Bash Here的选项,进入就是git的命令行界面了

2.3 在git设置身份的名字和邮箱

git config --global user.name "yourname"

git config --global user.email “your@email.com"

2.4 .ssh文件夹

手动搜索.ssh文件夹(我的在“C:\Users\用户名”文件夹下,显示隐藏文件夹)

2.5 生成ssh key

git命令行中运行如下命令在.ssh文件夹中生成ssh key

ssh-keygen -t rsa -C "your@email.com"

会询问你是否将key存在id_rsa文件中,直接回车就好。最后在.ssh下会生成id_rsa和id_rsa.pub两个文件

2.6 创建config文件

在该目录下(.ssh)创建config文件,内容如下:

如果你目录下已经有了该文件可以绕过此步骤

2.7 将ssh key加入到github中

复制id_rsa.pub文件中的ssh key到上图中的key一栏中。

在git中输出ssh -T git@github.com,中途跳出一大段话,键入yes,最后如下显示说明成功了。

2.8 将远程仓库clone到本地

比如说我想将项目被拉下来放在G:\git下

其中“git@github.com:360CodeSafe/chapter7.git”是自己github上仓库的地址

2.9 后续

至此就已经将Repository拉到本地了,但是本地的仓库只和自己github上的远程仓库建立了连接,没有和源仓库建立链接,如果还想和源仓库建立链接,可以如下命令:

git remote add upstream https://github.com/jinqi520/chapter7.git

3.新建工作分支

不新建就用master也可以,下面演示下如何新建工作分支,但后面的步骤还是以master为例

3.1 切入本地项目中

cd chapter7

3.2 新建并切到新的分支中

命令:git checkout -b newtest-branch

4.修改代码

将本地仓库(chapter)导入idea等工具中调试代码等等(这里随便修改下其中的文件,新建了一个readme.md文件)

5.将本地的改动更新到远程仓库中(github上自己的仓库)

5.1 git add [参数] <路径> 

该命令作用就是将我们需要提交的代码从工作区添加到暂存区,就是告诉git系统,我们要提交哪些文件,之后就可以使用git commit命令进行提交了。

也可以直接运行git add . ( 代表将所有文件都提交)

5.2 git commit -m “注释”

git commit 主要是将暂存区里的改动给提交到本地的版本库。

5.3 git push

最后一步将本地版本库的分支推送到远程服务器上对应的分支了

git push的一般形式为 git push <远程主机名> <本地分支名> <远程分支名>

由于当前分支只有一个远程分支,直接git push就行

可以看到远程仓库上已经更新了

6. pull request

6.1 New pull request

6.2 Creat pull request

6.3 RP的描述

7. success

源仓库中可以看到新建的RP

Git使用之pull request的更多相关文章

  1. git 上的pull request 是什么意思?

    1.git 上有常见的pull request 功能 2.pull request 的含义 解释一:    有一个仓库,叫Repo A.你如果要往里贡献代码,首先要Fork这个Repo,于是在你的Gi ...

  2. Git中的"pull request"真正比较的是什么?

    前言 利用git版本控制工具时,我们通常会从主分支拉出新分支进行开发,开发完成后创建pr(也就是pull request),让其他小伙伴帮忙review,确定代码没有问题后再将新分支合并到主分支上.但 ...

  3. 在Git的PR(Pull Request)提示冲突无法merge合并的解决方案

    问题 假设有一个分支A,向master分支提交PR,然后发生无法自动解决的冲突,PR提示不能执行merge合并. 解决方案1 本地checkout检出并切换到A分支,pull拉取更新到最新代码 在本地 ...

  4. idea git 发起一个pull request 请求

  5. 好代码是管出来的——Git的分支工作流与Pull Request

    上一篇文章介绍了常用的版本控制工具以及git的基本用法,从基本用法来看git与其它的版本控制工具好像区别不大,都是对代码新增.提交进行管理,可以查看提交历史.代码差异等功能.但实际上git有一个重量级 ...

  6. git pull request

    如何发 PR 以下以 wiki-pages 为例 把项目 fork 到自己名下,然后 clone 到本地 git clone git@code.xiaojukeji.com:yexiliang/wik ...

  7. Git工作流指南:Pull Request工作流

    参考地址:http://blog.jobbole.com/76854/ Pull Requests是Bitbucket上方便开发者之间协作的功能.提供了一个用户友好的Web界面,在集成提交的变更到正式 ...

  8. git pull request 流程

    git pull request 用于在 fork 官方 repo 到个人 github, 在本地修改后,向官方 repo 请求合并.在官方团队审查过代码后,就可以将自己所做的改动合并到官方 repo ...

  9. git 中Pull/Request 的初步

    1. 目的: pull/request (简称PR) 是 项目管理者(管理者)和项目开发者(开发者)之间提交和确认工作成果的机制. 2. 流程: 开发者: 在本地创建特性分支. > git ch ...

随机推荐

  1. MongoDB 及 scrapy 应用

    0 1.Scrapy 使用 MongoDB https://doc.scrapy.org/en/latest/topics/item-pipeline.html#write-items-to-mong ...

  2. 多媒体开发(6):滤镜实现各种图片效果 | Video-Filters | avfilter | 变色

    之前讲过使用FFmpeg的drawtext滤镜(把图片或文字加到视频上),而实际上,FFmpeg的滤镜很强大,远不止加字幕或加图片的功能.滤镜是很有趣的,可以把图片变模糊.变色.缩放旋转,等等. 本文 ...

  3. Auth模块、Forms组件

    Auth模块 auth模块是Django自带的用户认证模块: 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统.此时我们需要实现包括用户注册.用户登录.用户认证.注销.修改密码等功能,这 ...

  4. 写一个带文本菜单的程序,菜单项如下 (1) 取五个数的和 (2) 取五个数的平均值 (X) 退出。

    问题: 写一个带文本菜单的程序,菜单项如下(1)    取五个数的和 (2)     取五个数的平均值(X)    退出. 由用户做一个选择, 然后执行相应的功能.当用户选择退出时程序结束. 实现: ...

  5. vee-validate的使用

    官网地址:http://vee-validate.logaretm.com/ 这是一个插件Vue.js可以验证输入字段,显示错误,在一个简单而强大的方法.学习vee-validate,首先可以去阅读官 ...

  6. vue_表单 input 的绑定

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. [LeetCode] Reaching Points 到达指定点

    A move consists of taking a point (x, y) and transforming it to either (x, x+y) or (x+y, y). Given a ...

  8. [LeetCode] Global and Local Inversions 全局与局部的倒置

    We have some permutation A of [0, 1, ..., N - 1], where N is the length of A. The number of (global) ...

  9. java文件与流课后作业

    1,编写一个程序,指定一个文件夹,能自动计算出其总容量, 2,编写一个文件加解密程序,通过命令行完成加解密工作3,编写一个文件分割工具,能把一个大文件分割成多个小的文件.并且能再次把它们合并起来得到完 ...

  10. node 学习(一)

    什么是 Node.js Node.js就是运行在服务端的JavaScript. Node.js是一个基于Chrome JavaScript运行时建立的一个平台. Node.js是一个事件驱动 I/O ...