您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   Code  
会员   
   
 
     
   
 订阅
  捐助
通过 Git 将代码提交到 GitHub(上)
 
来源:博客 发布于: 2017-5-26
   次浏览      
 

1 前言

在博文“ 利用 SSH 完成 Git 与 GitHub 的绑定 ”中,咱们完成了本地 Git 与远程 GitHub 的绑定,这意味着咱们已经可以通过 Git 向 GitHub 提交代码啦!但是在进行演示之前,咱们需要先了解两个命令,也是咱们在将来需要经常用到的两个命令,分别为push和pull.

push:该单词直译过来就是“推”的意思,如果咱们本地的代码有了更新,为了保持本地与远程的代码同步,咱们就需要把本地的代码推到远程的仓库,代码示例:

git push origin master

pull:该单词直译过来就是“拉”的意思,如果咱们远程仓库的代码有了更新,同样为了保持本地与远程的代码同步,咱们就需要把远程的代码拉到本地,代码示例:

git pull origin master

此外,在之前咱们讲到过pull request,在这里,估计大家就能更好的理解了,它表示:如果咱们fork了别人的项目(或者说代码),并对其进行了修改,想要把咱们的代码合并到原始项目(或者说原始代码)中,咱们就需要提交一个pull request,让原作者把咱们的代码拉到 ta 的项目中,至少对于 ta 来说,咱们都是属于远程端的。

一般情况下,咱们在push操作之前都会先进行pull操作,这样不容易造成冲突。

2 提交代码

对于向远处仓库(GitHub)提交代码,咱们可以细分为两种情况:

第一种:本地没有 Git 仓库,这时咱们就可以直接将远程仓库clone到本地。通过clone命令创建的本地仓库,其本身就是一个 Git 仓库了,不用咱们再进行init初始化操作啦,而且自动关联远程仓库。咱们只需要在这个仓库进行修改或者添加等操作,然后commit即可。

接下来,以博主的 GitHub 账号中的mybatis-tutorial项目为例,进行演示。首先,进行 GitHub 个人主页:

如上图所示,点击mybatis-tutorial项目:

如上图所示,进入mybatis-tutorial项目后,点击Clone or download,复制上图所示的地址链接。然后,进入咱们准备存储 Git 仓库的目录,例如下面博主新建的GitRepo目录, 从此目录进入 Git Bash:

接下来,输入git clone https://github.com/guobinhit/mybatis-tutorial.git命令,其中clone后面所接的链接为咱们刚刚复制的远程仓库的地址:

如上图所示,咱们已经把远程的mybatis-tutorial仓库clone到本地啦!下面,咱们看看clone到本地的仓库内容与远程仓库的内容,是否完全一致:

如上图所示,显示咱们已经把远程仓库mybatis-tutorial的内容都clone到本地啦!接下来,为了方便演示,博主直接把之前重构的史上最简单的 MyBatis 教程里面的mybatis-demo项目的代码复制过来:

如上图所示,咱们已经把mybatis-demo项目里面的主要内容src和web复制过来啦!接下来,从此目录进入 Git Bash,然后输入git status命令查看仓库状态:

如上图所示,mybatis-tutorial已经是一个 Git 仓库了,而是输入git status命令后显示有两个文件,也就是咱们刚刚复制过来的两个文件没有提交。通过 Git 初体验及其常用命令介绍,咱们已经知道了在真正提交代码之前,需求先进行git add操作:

如上图所示,咱们已经将src文件add并commit到mybatis-tutorial仓库啦!接下来,咱们将web提交到仓库,然后输入git log命令查看仓库日志:

再输入git status命令查看仓库状态:

如上图所示,咱们已经将mybatis-tutorial仓库里面新添加的两个文件都提交啦!下面,咱们就可以将本地仓库的内容push到远程仓库,输入git push origin master命令:

如上图所示,在第一次向远程仓库提交代码的时候,需要输入账号及密码进行验证,验证成功后,显示如下结果:

然后,刷新 GitHub 中mybatis-tutorial仓库:

如上图所示,咱们已经将项目(仓库)中新添加的内容提交到了远程仓库。接下来,返回 GitHub 个人主页:

观察上图,咱们会发现一个问题,那就是:mybatis-tutorial仓库的概要中新增了一个Java语言的标记。对于这个仓库语言的标记,其来源有两个,一是在咱们创建仓库时就指定语言;二是在咱们提交或者新建代码后由 GitHub 自动识别该语言。

   
次浏览       
相关文章

每日构建解决方案
如何制定有效的配置管理流程
配置管理主要活动及实现方法
构建管理入门
相关文档

配置管理流程
配置管理白皮书
CM09_C配置管理标准
使用SVN进行版本控制
相关课程

配置管理实践
配置管理方法、工具与应用
多层次集成配置管理
产品发布管理