GitHub中PR(pull Request)操作

GitHub中PR(pull Request)操作
GitHub已经成为所有程序员的天堂和地狱。
众多程序员在此网站上活跃,想为开源贡献代码,就必须要学会提交PR。PR即是Pull Request操作
本人gitHub地址: https://github.com/thinkingfioa
1. 贡献代码
贡献代码,通俗的说,就是自己修改了代码,希望合并到别人的Repository(仓库)中。将自己的智慧贡献给开源社区。下面将详细讲解步骤

1.1 第一步:fork
在GitHub社区闲逛时,看中了某个项目代码,如:spring-projects/spring-framework,点击页面Fork按钮,会生成一个自己的Repository(仓库:thinkingfioa/spring-framework),如下图:

 

1.2 第二步:修改
fork成功后,通过git clone、修改、commit、push等操作后,将修改的内容,提交到自己仓库(thinkingfioa/spring-framework)中。如果对git clone、commit和push不知道的,自行百度。如下图:

 

1.3 第三步:请求合并代码(Pull Request)
在1.2步骤时,我们修改了自己的仓库(thinkingfioa/spring-framework)代码。我们希望贡献自己的一份力量,将修改的Commit也提交到别人的仓库(spring-projects/spring-framework)中。则要进行Pull Request。

1.3.1 创建PR

 

1.3.2 Create pull request
请特别注意下图中标红的部分,不能搞反了。点击: Create pull request 绿色按钮,完成提交PR。

 

1.3.3 等待
提交PR完成后,等待对方仓库(spring-projects/spring-framework)的管理员审核,如果他同意,则贡献代码完成了。

2. 同步最新代码
PR除了贡献代码外,还可以同步对方最新代码。通俗的说,fork某个仓库(如: spring-projects/spring-framework)代码一段时间后,为了同步自己仓库(thinkingfioa/spring-framework)和对方仓库(spring-projects/spring-framework)代码,保证自己仓库代码是最新版本。

2.1 同步最新代码
2.1.1 Create pull request
这一步和上面1.3.2一样的,只是要注意箭头,哪个仓库合并哪个仓库。请自习注意下图标红部分

 

2.1.2 点击绿色按钮,完成代码同步

———————
作者:thinking_fioa
来源:CSDN
原文:https://blog.csdn.net/thinking_fioa/article/details/79516352
版权声明:本文为博主原创文章,转载请附上博文链接!

GIT忽略而不提交文件的3种情形

 原文地址:https://blog.csdn.net/lovelyelfpop/article/details/51659322

1、从未提交过的文件可以用.gitignore

也就是添加之后从来没有提交(commit)过的文件,可以使用.gitignore忽略该文件

该文件只能作用于未跟踪的文件(Untracked Files),也就是那些从来没有被 git 记录过的文件

比如,忽略log/下的日志文件,可以在.gitignore中写

[plain] view plain copy

  1. log/*

2、已经推送(push)过的文件,想从git远程库中删除,并在以后的提交中忽略,但是却还想在本地保留这个文件

执行命令

[plain] view plain copy

  1. git rm –cached Xml/config.xml

后面的 Xml/config.xml 是要从远程库中删除的文件的路径,支持通配符*

比如,不小心提交到git上的一些log日志文件,想从远程库删除,可以用这个命令

3、已经推送(push)过的文件,想在以后的提交时忽略此文件,即使本地已经修改过,而且不删除git远程库中相应文件

执行命令

[plain] view plain copy

  1. git update-index –assume-unchanged Xml/config.xml

后面的 Xml/config.xml 是要忽略的文件的路径。如果要忽略一个目录,打开 git bash,cd到 目标目录下,执行:

[plain] view plain copy

  1. git update-index –assume-unchanged $(git ls-files | tr ‘\n’ ‘ ‘)

比如有一个配置文件记录数据库的链接信息,每个人的链接信息肯定不一样,但是又要提供一个标准的模板,用来告知如何填写链接信息,那么就需要在git远程库上有一个标准配置文件,然后每个人根据自己的具体情况,修改一份链接信息自用,而且不会将该配置文件提交到库

git 分支开发常用命令

git

git stash

git checkout develop

git pull origin develop

 

切回开发分支

git merge develop  命令用于合并指定分支到当前分支

git stash pop 从栈区释放

git branch命令会列出所有分支,当前分支前面会标一个*号。

git push origin 分支名称  //推送到指定分支

 

git stash 可用来暂存当前正在进行的工作, 比如想pull 最新代码, 又不想加新commit, 或者另外一种情况,为了fix 一个紧急的bug,  先stash, 使返回到自己上一个commit, 改完bug之后再stash pop, 继续原来的工作。
基础命令:
$git stash
$do some work
$git stash pop