为什么使用Git

版本控制:版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。

  • 本地版本控制系统
    相当于一个软件,记录文件的变更,位于本地
  • 集中式版本控制系统(SVN)
    有一个中心服务器,中心节点,每个工作者连接到服务器,从中心获得文件,上传,下载,修改,若中心服务器文件没了,全都没了,还需要网络支持
  • 分布式版本控制系统(Git)
    每个人都有个仓库,同时有一个远程服务器存储

Git优势

  • 速度
  • 简单的设计
  • 允许上千个并行分支
  • 分布式

重要概念(文件状态)

为什么使用Git_第1张图片
image.png

已提交(committed):只有保存到本地了,完成了这个状态,才可以提交到远程服务器

起步:初次使用需要设置姓名和邮箱
--global:表示设置了以后,以后所有的项目都可以使用

克隆项目

为什么使用Git_第2张图片
image.png

添加文件并提交

为什么使用Git_第3张图片
image.png

为什么使用Git_第4张图片
image.png

举例中,添加了a.md,相当于对项目做了修改,“untracked files":文件还未提交到暂存区

git status:查看文件状态
git add .:将新增的删除 修改等文件全部放入暂存区
git commit -am "x":双引号中的内容是用于备注,git commit -a是将暂存区的更新放到本地库中
git push:将本地仓库推送到远程仓库,第一次使用需要输入git push origin master (为什么)

模拟多人合作

为什么使用Git_第5张图片
image.png

为什么使用Git_第6张图片
image.png

其他人在项目中进行了修改,推送到远程服务器,但你并不知道,你继续在本地修改文件,然后无法推送,因为你本地没有远程的更新,需要执行git pull,将远程更新与本地合并,执行合并后会进入vim编辑器,可添加信息,保存退出,之后可以推送

修改删除文件

为什么使用Git_第7张图片
image.png

修改后,直接 git commit -a提交到暂存区,会进入vim编辑器,也是要你添加备注信息
为什么使用Git_第8张图片
image.png

总之,更新项目前,使用git pull更新本地文件,推送前,使用git add .提交到暂存区,git commit -am "X"提交文件到本地仓库

提问

  1. git clone url和git pull有什么区别?
  2. 本地仓库和远程仓库的区别?
  3. origin代表什么?

你可能感兴趣的:(为什么使用Git)