俗话说的好:好记性不如烂笔头。记忆力再好也需要反复阅读,每次阅读都有会新的收货。
Git 安装、配置
- Linux - sudo apt-get install git
- Mac
- 使用homebrew安装 brew install git
- 安装xCode,其中已集成了Git
- Windows - 从Git官网直接下载安装
# 配置用户名、email地址
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
–global,表示这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
Git 官网地址:https://git-scm.com/downloads
Git 安装参照:https://www.liaoxuefeng.com/wiki/896043488029600/896067074338496
Git 常用命令
- 创建仓库、查询文件
# 创建仓库
git init
# 查询隐藏目录、文件
ls -ah
- 添加、提交文件、查询仓库状态
# 添加文件
git add .
# 提交文件
git commit -m "备注信息"
# 查询仓库状态
git status
- 查询修改内容
# 查询修改内容
git diff
- 查询提交日志
# 查询提交日志 使用Q键退出
git log
git log --pretty=oneline
- 版本回退、查询记录
# 回退到上一个版本
git reset --hard HEAD~1
# 回退到指定版本
git reset --hard commit_id
# 查看文件
cat package.json
# 查询记录
git reflog
- HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。
- 穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
- 要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。
- 撤销修改
# 添加前撤销修改
git checkout -- MyPicker.js
# 添加后撤销修改
git reset HEAD MyPicker.js
git status
git checkout -- MyPicker.js
- 场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout – file。
- 场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。
- 已经提交了不合适的修改到版本库时,想要撤销本次提交,可以执行版本回退,不过前提是没有推送到远程库。
- 删除文件
# 删除文件
rm text.txt
git status
git rm text.txt
- 文件还原
# 使用 rm text.text 删除文件 未提交/已提交均可使用
git add text.txt
git status
rm text.txt
git status
git checkout -- text.txt # 还原
git status
# 使用 git rm text.txt 删除文件
git rm text.txt
git status
git reset HEAD text.txt
git checkout -- text.txt # 还原
- 如果使用 rm 删除文件,相当于只删除了工作区,使用 git checkout – file 即可还原
- 如果使用 git rm 删除文件,相当于不仅删除了工作去,还添加到了暂存区,需要先 git reset HEAD file,然后再git checkout – file 即可还原
- 如果想彻底删除文件,先使用 git rm 删除文件,再使用 git commit 提交即可
Git 提交至远程仓库
- 创建 GitHub 账号 或 Gitee 账号
GitHub 注册地址:https://github.com/join
Gitee 注册地址:https://gitee.com/signup
- 创建SSH Key
查看 C:\Users\Administrator.ssh 文件夹下 有没有 id_rsa 和 id_rsa.pub 文件,如果没有,创建 ssh-key,使用 ssh-keygen -t rsa -C "youremail@example.com" ,创建成功后,将 id_rsa.pub 中的内容复制到 GitHub中即可
id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
- 关联、推送至远程仓库
# 关联远程仓库
git remote add origin 远程仓库地址
# 推送至远程仓库
git push -u origin master
- 要关联一个远程库,使用命令 git remote add origin 远程仓库地址
- 关联后,使用命令 git push -u origin master 第一次推送master分支的所有内容
- 此后,每次本地提交后, 只需使用命令 git push origin master 推送最新修改
Git 从远程仓库克隆
# 从远程仓库克隆
git clone 远程仓库地址