前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Git—具体实例讲解Git用法以及提交PR

Git—具体实例讲解Git用法以及提交PR

作者头像
Java架构师历程
发布2018-09-26 16:36:47
2.4K0
发布2018-09-26 16:36:47
举报
文章被收录于专栏:Java架构师历程

Git作为目前比较流行的版本控制系统,被各个互联网公司广泛使用着,使用git可以很方便地进行多人协作和版本控制,大多数时候我们也需要把别人的代码进行整合和修改,而不是简单的修改,这时就需要对一个项目进行修改,本文主要通过一个例子讲解下使用git常见命令以及如何提交一个pr。

1.fork一个项目 打开一个项目,点击界面右上角的的“fork”,就会在你自己的项目库里创建一个代码的拷贝, 本例中fork的项目是七牛的JS SDK项目 https://github.com/qiniu/js-sdk

2.fork之后进入自己的主页后看到有了一份项目的拷贝,而且和原来的项目一模一样,注意提交pr是需要将原始项目fork到到自己的git库中修改的,不能直接git clone原始的项目修改提交。

此时可以将这个项目给下载到本地的一个目录下,可以直接下载zip包或者使用git clone命令:

3.在本地clone的目录中进行代码修改,查看文件修改情况的方法非常简单,只需要使用git status 命令就可以了。

另外也可以运行git diff命令这样可以查看到所有文件的更改内容,其中,减号代表删除的部分,加号代表添加的部分。这里修改的是README.md文件,如果只想看这个文件的修改情况,运行git diff /Users/dxy/GitJsSdk/js-sdk/README.md即可。

4.这个时候我们再运行git add .命令即可将所有的修改的文件进行添加。 关于git add命令,可以参考如下: 1) git add .表示所有修改的文件都进行添加,如果只添加某一个文件可以在add后面加上具体的文件名即可,比如本例可以直接使用下面的命令: git add /Users/dxy/GitJsSdk/js-sdk/README.md 2) 有时候我们提交自己建的项目中想忽略某些文件夹可以建一个.gitignore目录,里面指定想要忽略的文件或目录,比如自己eclipse的项目可以设置忽略bin/和gen/目录,这样就表示把 bin 目录和 gen 目录下的所有文件都忽略掉,从而使用得它们不会加入到版本控制当中 3) 有的时候我们代码可能会写得过于草率,以至于原本正常的功能,结果反倒被我们改出 了问题。遇到这种情况时也不用着急,因为只要代码还未提交,所有修改的内容都是可以撤销的。 比如对于上面我们修改的README.md文件我们运行git checkout即可将修改的内容撤销到之前的状态。 git checkout /Users/dxy/GitJsSdk/js-sdk/README.md 4) 上面的方法只适用于那些还没有执行过 add 命令的文件,如果某个文件已经被添 加过了,这种方式就无法撤销其更改的内容。

这种情况需要对已添加的文件先对其取消添加,然后才可以撤回提交,取消添加使用的是 reset 命令,用法如下所示: git reset HEAD /Users/dxy/GitJsSdk/js-sdk/README.md 然后再运行一遍 git status 命令,你就会发现 README.md 这个文件重新变回了未添加状态,此时就可以使用 checkout 命令来将修改的内容进行撤销了。

5.运行 git commit -m "add some common problem"提交我们修改的代码,commit 命令的后面我们一定要通过-m 参数来加上提交的描述信息,没有描述信 息的提交被认为是不合法的。这样所有的代码就已经成功提交了。

6.运行git push命令才能把本地修改的内容同步 到远程版本库上。或者运行git push origin master 其中 origin 部分指定的是远程版本库的 Git 地址,master 部分指定的是同步到哪一个分 支上,上述命令就完成了将本地代码同步到 这个版本库的 master 分支上的功能,git push origin master的意思就是上传本地当前分支代码到master分支。git push是上传本地所有分支代码到远程对应的分支上。

7.此时再去我自己的GitHub代码库里面看就成功修改了,最后我们可以创建一个pr如下:

然后可以等待CI检测通过即可:

出处:http://lib.csdn.net/article/git/10664

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017年6月12日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档