简介

git是什么

git 简单来说就是版本控制软件,当你对文件进行了多次修改或多个人同时修改时,它能帮你快速找回历史版本文件

git和svn的区别

svn的特点是集中式,工程文件全部放在中央服务器的一个唯一库上,管理员对开发者的权限有掌控,每个人都只能拉取和开发属于自己的模块,且提交按照文件进行存储,有网络要求

git的特点是分布式,每个开发者都能把全部工程文件拉取下来,每一台开发者电脑都是一个完整的库,可以等开发全部完成后再全部推送至远程

git 相比svn的优势是:

  1. 资源安全性,当某个开发者的文件资源损坏时,可以从别的地方再拉取一份
  2. 提交不受网络限制,当工作完成后可以等有网络时再提交

git 相比svn的劣势是:

  1. 数据安全性,每一个开发者都有一个完整的库,难以做到权限分配
  2. 使用难度相对svn更难

git 使用

首先第一步当然是下载并安装git

打开下载好的安装程序 一路默认选项安装即可

当右键任意地方 出现这两个选项的时候,说明git就安装成功了

进行全局配置

打开git bash
执行 git config --global user.name "username"
git config --global user.email "useremail"
配置用户名和邮箱(双引号里就是你自己github上面的账号,如果没有需要去注册一个)

本地操作

git大致可分为本地操作跟远程操作,首先来讲本地操作

初始化工作区

右键打开git bash
输入 git init 会生成一个.git 文件 说明初始化成功

提交到本地仓库

添加到暂存区

在git bash中执行 git add .或者git add 需要添加的文件名

添加到本地库

在git bash中执行 git commit -m "备注" . 把暂存区中的文件提交到本地库 至此文件就被成功的提交到了本地库

查看及修改工作区状态

查看工作区文件状态

执行git status 即可查看当前文件夹的文件状态

出现以下信息时,说明当前工作区处于master分支,且文件已全部被提交至本地库

查看历史记录

执行git log可查看到所有的提交记录,及提交信息

但是这种显示方式显示的信息太多太臃肿,对阅读体验不友好,我们可以换一种显示方式

执行git reflog 查看

这时我们就能清晰的看到我们想要的信息

版本回退

当出现了不可修改的bug 或者需要找回本地库中被删除的文件时,可以进行版本回退,例如我想要回到 第一个版本的状态
则执行 git reset --hard d316950

–hard 参数 当本地库发生版本变动的时候 工作区和暂存区也会改变
–mixed参数 当本地库发生版本变动的时候 暂存区也会改变 但是工作区不会变化(不常用)
–soft参数 当本地库发生版本变动的时候 暂存区和工作区不会变化(不常用)

后面那串数字就是历史版本对应的索引值

分支操作

查看当前分支 git branch -v
创建分支 git branch 分支名
切换至指定分支 git checkout 分支名
当需要合并分支时,需要先切换到master主分支,随后执行 git merge 分支名


如果有冲突时,需要手动解决冲突,然后提交

远程操作

创建GitHub仓库并复制https地址

在本地为此仓库添加别名

执行 git remote add 别名 地址

查看已添加的别名,确保别名成功添加进去

执行 git remote -v

这时就可以将本地库推送至远程库了

执行 git push 别名 远程库分支名

克隆GitHub

当我们需要克隆大佬写的东西时 可执行
git clone https地址

免密操作

当我们往远程库推送时,会需要你输入账号密码,这样每次都输入就会很麻烦,我们可以生成ssh来一劳永逸

执行 ssh-keygen -t rsa -C 你的GitHub邮箱

会在你的 c盘/用户/用户名/.ssh 文件夹下 生成 id_rsaid_rsa.pub两个文件

将生成的密钥信息添加至GitHub

在GitHub设置页中新添 ssh密钥

将id_rsa.pub中的密钥复制进去即可

完结

此时git使用就基本介绍完毕了,git的出现极大的提高了开发效率,也为代码回退提供了一种完美的解决方案,掌握git对我们今后的开发还是多人协作来说都是至关重要。