Git基础教程

作者 度 日期 2016-08-24
Git基础教程

Git简介

Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目.
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Git 是一个快速、可扩展的分布式版本控制系统,它具有极为丰富的命令集,此文主要介绍git的使用,了解git的三个区,通过git连接github,以及常用git的常用命令.

git的使用

备份文件

  1. 类似于网盘备份
  2. 我们的代码也需要备份。修改完了以后提交给版本库进行保管,哪一天代码没了也可以找回来。

记录历史

  1. 比如我们打游戏就要存档,万一挂了还可以从上个存档的地方重玩。
  2. 和网盘不同,网盘保留的是最新的状态,历史的记录都没有了,修改的记录也都找不回来了
  3. 网盘无法知道文件里的某行代码是何人在哪个时间添加进去的

回到过去

  1. 如果我有一天不小心删除了某个文件,我们可以通过历史备份找回来

多端共享

  1. Git仓库可以通过PC端、Android、IOS移动端等各个终端访问可以随时随地修改代码,公司没干完的工作回家接着干

团队协作

  1. 多个人或团队合作编写一个项目
  2. 合并代码处理冲突

什么是git

  1. 为了告别手动方式管理Linux代码,并且符合开源和免费,Linus花了两周时间自己用 C 写了一个分布式版本控制系统,这就是Git.
  2. Git迅速成为最流行的分布式版本控制系统,尤其是 2008 年 GitHub 网站上线了,它为开源项目 免费提供Git存储 ,无数开源项目开始迁移至GitHub,包括jQuery,PHP,Ruby等等。

git的安装

mac下安装
下载Homebrew http://brew.sh

Alt text

1.拷贝对应脚本到终端下安装HomeBrew
2.然后在终端执行 brew install git命令安装*git

配置git用户和邮箱

$ git config --global user.name "你的github用户名"
$ git config --global user.email "你的github邮箱"
  • 查看配置
$ git config --global user.name
$ git config --global user.email
$ git config --list

初始化git

  1. 先创建一个空目录 ,然后进入此目录
  2. 点击右键选择Git-Bash打开命令行
  3. 输入git init命令把这个目录变成Git可以管理的仓库
  4. 通过ls -al命令查看所有文件
    $ git init

git中的三个区

工作流: 点击查看工作流

工作区

通过git add 添加到暂存区

$ git add '文件名'

暂存区 :过渡的作用,避免误操作,保护工作区和历史区,分支处理;

通过git commit 添加到历史区

$ git commit -m"注释内容"

历史区

查看历史状态
修改时通过git status查看当前状态

$ git log

git diff

不同区的代码比较

1.工作区和暂存区

$ git diff

2.暂存区和历史区

$ git diff --cached(--staged)

3.工作区和版本库

$ git diff master

撤销

  1. 撤销回git add的内容

    git reset Head "文件名"
  2. 撤回文件 : 先从缓存区撤销,缓存区无内容,从历史区域撤销

    $ git checkout "文件名"
  • 有的时候我们希望提交时合并到上一次的提交 git commit –amend

删除

1.删除暂存区和工作区

删除暂存区中的内容,并且保证工作区中的内容已经不存在

$ git rm "文件名"

  • 若本地文件存在则不能删除,需要通过-f参数删除

    2.仅删除缓存区

    $ git rm --cached "文件名"

恢复

1.恢复某个版本文件

$ git checkout commit_id filename 某个文件

2.通过版本id恢复

$ git reset --hard commit_id

3.恢复未来

$ git reflog

4.快速版本回退

$ git reset --hard HEAD^
$ git reset --hard HEAD~3

同步远程仓库

1.gitHub

注册账号
新建仓库

2.添加远程仓库

$ git remote add origin "地址" //origin 为自定义名称

  1. 添加忽略文件
    $ touch .gitignore 写入一个过滤文件
    $ echo .DS_Store
    $ echo node_modules
    $ echo .idea

4.推送代码

$ git push origin master

5.查看

$ git remote 不带参数,列出已经存在的远程分支
$ git remote -v 查看地址

代码的合并

1.git fetch

$ git fetch

2.拉取过来手动合并

$ git diff master origin/master
$ git merge origin/master

3.拉取并合并

$ git pull

常用命令总结

rm -rf .git 在当前目录删除git
git rf -m '文件夹名'   删除文件夹
git remote  不带参数,列出已经存在的远程分支
git branch -d dev 删除dev分支
git add home/client/widget/* 提交整个目录
git add home/client/page/order_list/  提交整个文件夹
提交文件写备注 除了有 git commit -m “这是备注信息” 的方法外
还有git commit 进入另一个界面的普通模式,按 i 键进入编辑模式 编辑完成后 再按esc退出编辑模式
按shift+ : wd 保存退出;