P2 初始化配置

查询GitHub版本

git -v

配置用户名和邮箱

git config --global user.name "LuHua"
#配置用户名
git config --global user.email fischl@foxmail.com
#配置邮箱
git config --global credential.helper store
#保存用户名和密码
git config --global --list
#查询Git配置信息

P3 新建仓库

创建仓库的两种方式:

方式一:git init 用户本地创建

方式二:git clone 从服务器远程克隆已有的仓库

本地创建

  1. 再合适的位置创建一个空目录: mkdir learn-git
  2. 进入新建的空目录: cd learn-git
  3. 初始化本地仓库: git init 或者 git init 仓库名

    • git init 仓库名 这种会在当前目录下新建一个文件夹名为“仓库名”的 **git **仓库

克隆创建

  1. 直接使用 git clone Git网络地址

    git clone https://github.com/Sakurakouji-Saika/Study.git

P4 工作区域和文件状态

工作区域:==工作区== --(git add)--> **==暂存区== **--(git commit)--> ==本地创库==

文件状态:

  • 未跟踪(Untrack)
  • 未修改(Unmodified)
  • 已修改(Modified)
  • 已暂存(Staged)

P5 添加和提交文件

  • git status 查看仓库状态

  • git add 添加到暂存区,可以使用通配符提交文件

    • git add . 提交当前所有文件都添加到暂存区
    • git add *.txt 使用通配符提交
  • git commit 提交

    • git commit -m "这是第二次提交文件"

git log 查看提交记录

git log --oneline 查看简介的提交记录

P6 Git reset回退版本

git reset --soft soft参数表示退回到某一个版本,并且保留工作区和暂存区所有的修改内容。

git reset --hard hard参数表示退回到某一个版本,并且丢弃工作区和暂存区的所有修改内容。

git reset --mixed 退到某个版本,只保留工作区的修改内容,而丢弃暂存区的修改内容。默认参数

git ls-files 查看暂存区

git reflog 查看历史操作,可以展示历史版本号

P7 Git diff查看差异

查看工作区、暂存区、本地仓库之间的差异
查看工作区、暂存区、本地仓库之间的差异

git diff //默认比较工作区和暂存区之间的差异

git diff HEAD //工作区与版本库之间的差异

git diff --cached //暂存区与版本库之间的差异

git diff 版本号1 版本号2 //查看2个版本之间的差异

git diff HEAD~ HEAD //查看上个版本与当前版本之间的差别

git diff HEAD~2 HEAD //查看上2个版本与当前版本之间的差别

git diff 版本差异命令 文件目录 //查看指定文件的差异内容

例子:git diff HEAD~2 HEAD file3.file

P8 Git rm 删除

rm file文件名; git add file文件名 //先从工作区删除文件,然后再暂存删除内容

git rm <file> //把文件从工作区和暂存区同时删除

git rm --cached <file> //把文件从暂存区删除,但保留在当前工作区中

git rm -r * //递归删除某个目录下的所有子目录和文件,删除后不要忘记提

P9 .gitignore忽略文件

应该忽略那些文件

  • 系统或者软件自动生成的文件
  • 编译产生的中间文件和结果文件
  • 运时生成日志文件、缓存文件﹑临时文件
  • 涉及身份、密码、口令、秘钥等敏感信息文件

P10 SSH配置克隆仓库

ssh-keygen -t rsa -b 4096 //创建公钥和密钥

  • 私钥文件:id\_rsa
  • 公钥文件:id\_rsa.pub

克隆仓库:git clone

推送:git push <remote>

拉取:git pull

P11 关联本地仓库和远程仓库

添加远程仓库:

第一步:

git remote add <远程仓库别名> <远程仓库地址>

第二部:

git push -u <远程仓库名><分支名>

查看远程仓库:

git remote -v

拉取远程仓库内容:

git pull <远程仓库名><远程分支名>:<本地分支名>