git基础扫盲篇

git官网地址:https://git-scm.com/

git是什么

根据Git官方解释:Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
翻译过来:Git 是一个免费的开源开源分布式版本控制系统,它可以快速高效地处理从小型到大型的所有项目。简单点来说,git可以作为我们程序代码的版本控制工具。

为什么选择git

首先,git作为版本控制工具其自身所具有的优点:
1、适合分布式开发,强调个体。
2、远程服务器(公共的)压力和数据量都不会太大。
3、速度快、灵活,分支切换速度快。
4、任意两个开发者之间可以很容易的解决冲突。
5、离线工作。
现在我们来看图说话,直观的展示git在性能上的优秀表现:


git基础扫盲篇_第1张图片
git与svn对比.jpg

git的原理与工作流程

我们写的代码会在工作区、暂存区、远程仓库区这三个区域进行存储,包括之后用到的git命令就是为了让我们的代码文件在这三个区域内来回搬来搬去,下面我们来看图说下git大概的工作流程:

  1. 我们在自己本地的工作区(Working Directory)中新增或者修改代码;
  2. 然后把我们工作区新增或者修改过的代码提交到暂存区(Staging Area);
  3. 然后我们把暂存区的代码提交至远程仓库(.git Directory Repository),这样就完成了一次代码提交的完整流程;


    git基础扫盲篇_第2张图片
    git工作流程.jpg

git基本命令

git基础扫盲篇_第3张图片
git基本命令.jpg

这里我就不重复叙述git基本命令的用法录入,可以去官方文档查看:https://git-scm.com/book/zh/v1/Git-%E5%9F%BA%E7%A1%80-%E5%8F%96%E5%BE%97%E9%A1%B9%E7%9B%AE%E7%9A%84-Git-%E4%BB%93%E5%BA%93

git合并失败的解决方案

初次使用git经常会遇到合并冲突与合并失败的的问题,下面提供两种粗暴简单的解决方案:

方案一

保留本地的更改,中止合并->重新合并->重新拉取

$:git merge --abort
$:git reset --merge
$:git pull

方案二

舍弃本地代码,远端版本覆盖本地版本(慎重)

$:git fetch --all
$:git reset --hard origin/master
$:git fetch

你可能感兴趣的:(git基础扫盲篇)