Git教程01

201 阅读5分钟

Git学习

主要课程目标

  1. git的诞生
  2. git的概念
  3. git的创建远程仓库的两种方式
  4. git的安装配置
  5. git的远程仓库创建流程
  6. 将代码推送到代码托管平台的步骤
  7. git的工作流程
  8. Git 与 SVN 区别
  9. git的多人合作方式
  10. 我们为什么要学习版本控制工具

11. 重点掌握安装Git和Git创建仓库、命令行

git的诞生

Git是由Linux之父Linus开发的,在2005年4月3号开始开发,到 4.7 仅四天时间Git就可以投入使用了。到同年6月份,Linux已经在使用Git管理代码了。 Linux是主张开源免费的和反对集中式的版本管理工具,所以他不使用CVS,最早他采用的是手工合并代码的方式。

git的概念

  • Gits是一种版本控制工具

  • Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

  • Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

  • Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

git的安装配置

  1. 打开Git官网下载安装程序,然后按照默认选项安装即可(选择适合自己电脑版本的)。
  2. 安装完成后,在桌面右击,点击gitBashHere弹出一个类似cmd的命令行窗口,可以在里面输入git --version 查看版本,证明安装成功。 如:
    alt

git的创建远程仓库的两种方式

方法一:

  1. 创建github(代码托管平台),可以采用这个网址github
  2. 创建远程仓库, 点击右上角的+号===>new repository===>写入仓库的名称 ===>仓库的描述===>勾选创建READER.md===>点击按钮创建

方法二:

  1. 创建一个项目文件夹
  2. 使用git init命令创建一个仓库,右击鼠标点击git bash here,打开命令框输入git init

git的远程仓库创建流程

步骤:

  1. 第一步注册代码托管平台(可以使用码云网站)。
  2. 创建仓库,在右上角有一个+号,列表里面有一个new repository选项,仓库名称(一般是项目名称)。
  3. 项目描述要写。
  4. 点击create repository,创建仓库完成。

将代码推送到代码托管平台的步骤

  1. 在创建好的远程仓库中,点击Clone or download复制我的仓库的地址
  2. 回到我的桌面,鼠标右击点击git Bash Here 打开命令框,在命令框中输入git clone 我复制的远程仓库中的地址,(复制到了我的本地)
  3. 可以把想要的代码和资源放到桌面生成的本地文件中
  4. 提交到暂存区,使用git add . 或git add 文件名
  5. 提交到本地仓库, 使用git commit -m '项目描述'

注意:设置签名信息,每个使用者初次注册的都会操作的两步 git config --global user.name "Your Name" git config --global user.email "email@example.com" 顾名思义,这是设置你的名字和Email地址。 5. 在设置好了签名信息之后,再重新提交到本地仓库 6. 推送到远程仓库中,使用git push

git命令的总结

  • git add . 表示的是把文件全部提交到暂存区
  • git add 文件名 表示的是提交单个文件
  • git commit -m "项目描述" 表示的是把文件从暂存区提交到本地仓库
  • git push表示的是把本地仓库中的文件推送到远程仓库

Git 与 SVN 区别

  • svn属于集中式版本管理控制系统
  • git属于分布式版本管理控制系统
  • git只关心文件的整体是否发生变化,git并不会记录前后的变化
  • svn只关心文件内容的具体差异,都会记录每次内容有哪些更新和变化

SVN的缺点

  • 不安全,可以轻松掌握每个人的开发权限
  • 不方便,必须连接在服务器上
  • 不灵活,服务器单点故障

Git的优点:

  • 分布式,强调个体
  • 公共服务器压力和数据量都不会太大
  • 离线工作,每个人的本地仓库,大部分操作在本地库完成,不需要联网(SVN做不到)
  • 分支操作非常快捷流畅(重点介绍)
  • 可以吃后悔药, 尽可能添加数据而不是删除或修改数据(删除或修改不容易恢复,而每次添加一个版本,历史版本都有)
  • 速度快、灵活, 有能力高效管理类似 Linux
  • 内核一样的超大规模项目(速度和数据量)

git多人合作的方式

  1. 局域网:只能内部人员可访问,GitLab
  2. 外网环境:GitHub,码云

git的工作区域

主要分为三种区域: 工作区,暂存区,本地区

  • 工作区:表示新增或修改了某个文件,但还没有提交保存;
  • 暂存区:表示把已新增或修改的文件,放在下次提交时要保存的清单中
  • 本地仓库:文件已经被安全地保存在本地仓库中了。

如图:

git中的本地仓库和远程仓库的理解

为什么学习版本控制工具

  • 备份多个版本,浪费存储空间,花费时间长。
  • 难以恢复至以前的历史版本,容易引发BUG,解决代码冲突困难。
  • 难于追溯问题代码的修改人和修改时间、修改内容、日志信息。
  • 项目升级,版本发布困难。
  • 无法进行权限控制。 比如 测试人员:只读;开发人员:模块权限。
  • 开发团队在工作过程中无法多条生产线同时推进任务,效率慢。