首页 > 编程语言 > Git/GitHub学习第一天
2016
04-01

Git/GitHub学习第一天

GitHub介绍

众所周知,GitHub是一个代码托管平台,可以依据现在目前最流行的版本管理方式Git进行管理,可以说,GitHub就是程序员的FaceBook,它让我领略到了开源的魅力。

Git介绍

Git是目前最流行的版本管理方式,其他的版本管理方式,我也有所了解,比如说SVN。和svn相比,git有太多的有点,比如,我在本地管理仓库的时候是不需要联网的,而svn不行,不联网它就不干活了。因此,Git就是一个分布式的版本管理工具,而svn只是一个基于服务器的版本管理方式,如果服务器挂了,就不用工作了;相反,Git却不是这样的,Git可以任意的回滚到以前的版本。

学习内容

  • 1、Git Base安装:在Windows系统下载一个mysysgit工具,下载并进行安装
  • 2、Git 基本命令:
    • git init :在本地创建代码仓库
    • git add <文件名> :添加文件到暂存区
    • git commit -m "提交说明" :进行提交,并创建一个新的版本
    • git status :查看当前工作区的状态
    • git diff :查看文件修改的内容
    • git log :查看提交历史
    • git reset :在版本之间进行穿梭
  • 3、gitHub和Git进行关联:如何与、GitHub进行关联,gitHub作为一个远程服务器,我们任何时候都可以从GitHub下push、pull,在刚开始的时候,必须要进行关联,使用git remote add origin git@github.com:username/yourProject.git命令将本地仓库和远程仓库进行关联,在这之前,必须要在远程仓库建立一个和本地仓库一样的工程才行,而且必须在配置了ssh.
  • 4、克隆功能:当我们fork别人的项目,我们就获得了和原作者相同的仓库,此时,可以使用克隆命令把远程仓库克隆到本地,使用的命令如下:git clone git@github.com:username/yourProject.git
  • 5、分支功能:这个功能我认为是git的最重要的一点,如果没有这一点,它就和svn没有什么区别了。对于每一个git仓库,都会有一个主分支,也就是master分支。分支的概念可能有一点烦人,大家需要多多努力。
    • 创建分支:git branch <分支名>
    • 查看分支:git branch,使用此功能,显示的*号的分支我当前分支
    • 切换分支:git checkout <分支名>
    • 创建并切换分支 git checkout -b <分支名>
    • 合并某分支到当前分支:git merge <分支名>,此时采用的是"快进模式"合并
    • 删除分支: git branch -d <分支名>
  • 6 冲突解决:当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。这张图完全展示了分支的概念。

    分支图
  • 7 多人合作
    • git remote -v:查看远程库信息、
    • 本地新建的分支如果不推送到远程,对其他人就是不可见的;
    • 从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;
    • 在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;
    • 建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;
    • 从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。

最后说一句,刚开始我不怎么习惯这种方式,只要多用,我就相信我一定能学会Git的管理方式!


文/webbc(简书作者)
原文链接:http://www.jianshu.com/p/60377424d8d2

编程技巧