1.创建版本库
#版本库在项目立项之后创建,同一个项目只需要运行以下操作一次就行
git config --global user.name "写你自己的名字"
git config --global user.email "写你自己的邮箱"
#初始化Git仓库
#1.先查看当前目录所在路径
pwd
#2.进入d盘下的 ecshop目录
cd d:
ls
cd ecshop
3.使用git命令初始化当前目录为git的本地仓库
git init
#新建文件 readme.txt , 并且写上一句话: XXXX
touch readme.txt
vi readme.txt
#查看文件内容
cat readme.txt
#需求:把当前文件保存到git的本地仓库
#把文件添加到 暂存区
git add readme.txt
#提交文件到本地仓库
git commit -m "新增文件:readme.txt"
#查看日志
git log
2.查看工作区状态
#查看状态
git status
#需求:查看不同状态
#步骤:
#1.新建文件
touch a.txt
#2.查看状态 , 此时发现显示的文件名是红色的
git status
#3.添加到暂存区
git add a.txt
#4.查看状态 , 此时发现显示的文件名是绿色的
git status
#5.提交到本地仓库
git commit -m "描述信息"
#6.查看状态 , 此时发现显示工作区是干净的
git status
3.版本回退
#查看日志
git log
git log --pretty=oneline #一行显示日志
#回退版本
#回退方法一,基于 ^ 表示回退到前几个版本
git reset --hard HEAD^ #回退到上一个版本
git reset --hard HEAD^^ #回退到上两个版本
#小结: 通过 ^ 数量来决定返回到前几个版本
#问题: 如果要回退到前100个版本,怎么办?
#回退方法二,基于 ~数字
git reset --hard HEAD~2 #回退到上两个版本
git reset --hard HEAD~100 #回退到上100个版本
#小结: 通过 ~数字 决定返回到前几个版本
#问题: 如果我要回退到前765个版本 ,会有什么问题? => 765是怎么数出来的,万一数漏了呢?
#回退方法三, 基于 版本号(取前面的4-6位即可)
git reset --hard a7ed1f #回退到版本号为a7ed1f的版本
#查看全部的日志信息
git reflog
4.撤销修改
#工作区撤销: git checkout -- 文件名
#第一种情况,在工作区中修改文件内容,但是注意未添加到暂存区
#步骤:
#1.修改readme.txt文件,进入写上一句话
vi readme.txt
#2.查看状态 , 此时发现里面显示的文件名是红色
git status
#3.撤销
git checkout -- readme.txt
#第二种情况,在工作区中修改文件内容,并且添加到暂存区,但是没有提交到本地仓库
#步骤:
#1.修改readme.txt文件,进入写上一句话
vi readme.txt
#2.查看状态 , 此时发现里面显示的文件名是红色
git status
#3.添加到暂存区
git add readme.txt
#4.查看状态
git status
#5.把readme.txt文件退出暂存区
git reset HEAD readme.txt
#6.查看状态
git status
#7.撤销修改
git checkout -- readme.txt
#8.查看内容,保证撤销修改
cat readme.txt
#9.查看状态
git status
#第三种情况,已经把文件修改并且提交到本地仓库
#步骤:
#1.修改文件内容
vi readme.txt
#2.添加到暂存区
git add readme.txt
#3.提交到本地仓库
git commit -m "描述信息"
#4.查看日志信息
git reflog
#5.回退到上一个版本
git reset --hard 版本号
5.删除操作
#删除文件
rm 文件名 #删除 工作区 中的 xx 文件
git rm 文件名 #删除 暂存区 中的 xx 文件
#第一种情况: 提交到本地仓库
#步骤:
#1.删除工作区中现有的一个文件
rm a.txt
#2.告诉暂存区我要移除本地仓库中的a.txt文件
git rm a.txt
#3.提交到本地仓库
git commit -m "删除文件:a.txt"
#4.版本号回退
git reset --hard 版本号
#第二种情况: 添加到暂存区
#步骤:
#1.删除工作区中现有的一个文件
rm a.txt
#2.告诉暂存区我要移除本地仓库中的a.txt文件
git rm a.txt
#3.撤销,从暂存区撤出删除命令
git reset HEAD a.txt
#4.撤销,从工作区撤销删除命令
git checkout -- a.txt
6.远程仓库
#使用码云 Gitee 替代 GitHub 的原因: Gitee是国内网站,速度比较快
#没有注册的话先注册,输入 用户名+电话号码+密码 即可注册
#登录Gitee
#先创建一个 SSH key,把邮箱改成自己的!!! ,然后一路 回车即可
ssh-keygen -t rsa -C "xxx@qq.com"
#前往 显示的( 类似 /c/Users/Administrator/ ) 目录下,找到 .ssh 目录,打开之后找到里面的私钥和公钥
id_rsa #私钥
id_rsa.pub #公钥 (pub -> public)
#用记事本打开公钥 id_rsa.pub , 复制里面的 公钥
#前往码云Gitee ,点击右上上角的用户头像 -> 设置
#找到左边的导航列 -> SSH公钥,点击
#粘贴公钥代码,随意设置一下标题即可
#右上角找到 + 号 -> 新建仓库
#填写 仓库名、仓库介绍 ,然后点击创建即可
#复制 左上角ssh链接(复制自己的!!!)
例如:git@gitee.com:ncy_yegege/echop_s5.git
#在本地git工具上进行克隆,回车,填yes即可
git clone git@gitee.com:ncy_yegege/echop_s5.git
#查询当前目录下的所有文件,如果出现了刚刚在gitee上新建的仓库目录,说明克隆成功
ls
#添加远程仓库的连接信息
git remote add origin git@gitee.com:ncy_yegege/echop_s5.git
#输入命令推送到远程(第一次推送加上选项 -u ,后面可以不用再加,直接 git push origin master即可)
git push -u origin master
#从远程仓库拉取到本地
git pull origin master