简单说一下git的日常使用

123 阅读4分钟

「这是我参与2022首次更文挑战的第3天,活动详情查看:2022首次更文挑战

这篇文章主要是浅谈一下自己在日常工作中对git的使用,对于我个人来说,git简直就是我的最佳工作助手,只要我的代码提交到git上,我就不怕丢失。

Git的安装与基本配置

windows环境:在网站git-scm.com/下载安装,然后通过cmd命令行配置

git config --global user.name "FishC_Service"
git config --global user.email "my_email@qq.com"
# 检查信息是否写入成功
git config --list 

Git的基本使用

Git的三大区

在这里先铺垫一下git的三大区,这三大区主要是工作区暂存区版本库

  • 工作区:工作区是我们在git仓库中可以直接操作的地方,也就是我们肉眼可见的文件、目录等,我们可以通过文本工具等来进行修改、删除等操作。
  • 暂存区:数据临时存放的地方,用来在工作区与版本库之间做友好的数据交流。当我们把文件往git仓库里面添加的时候,是分两步执行的:第一步是使用git add命令将文件修改添加到暂存区中;第二步是使用git commit 命令将暂存区的所有内容提交到当前分支。
  • 版本库:安全存放数据的地方,这里有你提交的所有版本的数据,当我们执行git commit 提交暂存区的内容以后,HEAD就会指向最新提交的版本,通过git log命令可以查看到提交日志
commit b48be93d3fc3d5288cf89221132721228706593a (HEAD -> master)
Author: ChenXiaoW <1105013796@qq.com>
Date:   Tue Feb 15 21:13:15 2022 +0800

初始化版本库

当我们想把一个文件纳入到git的管理中时,那就必须要初始化版本库,在文件所在的目录中通过执行git init的命令,将这个目录变成git可以管理的仓库,这个目录下会创建一个.git的目录,在.git这个目录中主要有hooks(存放shell脚本)info(存放仓库信息)logs(保存所有更新的引用记录)等信息。

常用命令

在日常工作中,最常用到的命令主要是git addgit commitgit push以及git pull, 通过前面三个命令,我们就可以完成git的最基本的操作了,并且将我们的代码推送到我们的远程代码版本库中。

git add

执行git add 命令,就是把文件添加到暂存区中,这个暂存区,实际上它只是一个文件,用来保存即将提交的文件列表信息

  • 相关命令
# 加入暂存区
git add <file>
# 将所有修改的文件加入到暂存区
git add .
# 从暂存区移除指定文件
git rm --cached <file>
# 从暂存区中移除指定目录及子目录文件
git rm --cached <目录> -r

git commit

git commit 是用来将暂存区的代码提交到当前本地分支中的,也就是实际上提交到git版本库中。

  • 相关命令
# 将暂存区中的单个文件提交到版本库中
git commit <file> -m 'remark'
# 将暂存区中的所有文件提交到版本库中
git commit -am 'remark'

git push

git push是用来将我们本地版本库中的代码推送到远程版本库中,这样其他同事也能通过git pull 拉取远程版本库的代码来同步你的代码。

  • 相关命令
# 将本地版本库的修改 推送到 远程版本库。本地分支名与远程分支名不同
git push <远程主机名> <本地分支名>:<远程分支名>
# 将本地版本库的修改 推送到 远程版本库。本地分支名与远程分支名相同
git push <远程主机名> <本地分支名>
# 远程分支与本地分支同名且远程分支存在
git push <远程主机名>
# 删除远程分支
git push <远程主机名> :<远程分支名>
# 强行推送 慎用:可能存在代码覆盖的风险
git push --force <远程主机名>

git pull

git pull 这个命令是用来拉取远程仓库的代码,这个命令也是git fetch git merge 命令的结合。

  • 相关命令
# 远程分支与本地分支不同名
git pull <远程主机名> <远程分支名>:<本地分支名>

# 远程分支与本地分支同名
git pull <远程主机名> <远程分支名>

git status

git status 命令是用来查看文件状态。

  • 相关命令
# 查看所有文件状态
git status
# 查看指定文件状态
git status <filename>

git log

git log是用来查看提交日志的。

  • 相关命令
# 不包含完整的散列值
git log --oneline
# 包含完整的散列值
git log --pretty=oneline
# 分支树查看-详细
git log --graph
# 分支树查看 - 省略
git log --graph --pretty=oneline --abbrev-commit

如果我们想要查看已经删除的commit记录,那么可以用git reflog来查看。

总结

主要是分享一下基础命令的使用,至于其他的操作,后续会继续分享,在此祝大家元宵快乐~