说在前头:本人为大二在读学生,书写文章的目的是为了对自己掌握的知识和技术进行一定的记录,同时乐于与大家一起分享,因本人资历尚浅,发布的文章难免存在一些错漏之处,还请阅读此文章的大牛们见谅与斧正。若在阅读时有任何的问题,也可通过评论提出,本人将根据自身能力对问题进行一定的解答。
前言
因为博主最近在学习git的命令行操作,所以想着通过该文章记录学到的各种git基本操作命令,以便后面复习。笔记主要包含git的上传、更新、删除、分支、合并、冲突等较为简单的基础命令。
对于命令的学习博主是通过慕课网老师“丶五月的夏天”的免费课程《全方位入门git》进行学习的,想要系统的学习git命令的小伙伴们也可以试着观看该老师的教学视频进行学习。(下面是课程对应的链接地址)
《全方位入门git》:https://www.imooc.com/learn/1278
01—设置全局的用户名和邮箱
git config --global user.name "Bosen"
git config --global user.email "bosen_once@163.com"
02—初始化仓库
# 初始化本地仓库
git init
# 创建一个文件
touch README.md
# 将新建的文件加入本地暂存区
git add README.md
# 提交本地暂存区
git commit -m "first commit"
# 配置远程仓库
git remote add origin https://gitee.com/bosen-once/test.git
# 将本地仓库代码上传至远程仓库
git push -u origin master
03—查找提交记录
# 查看当前项目改动
git status
# 查看提交记录
git log
# 查找指定作者的提交记录
git log --author='Bosen'
①当没有文件发生改变时:git status
②当有文件发生改变时:git status(未加入缓存区的显示红色,加入缓冲区后显示绿色)
③查看提交记录:git log
④查找指定作者Bosen的提交记录:git log --author='Bosen'
04—删除文件的操作
# 删除文件
git rm demo.txt
①手动删除:
②命令删除:
05—重命名文件
git mv demo.txt demo111.txt
手动重命名:(还需手动加入暂存区)
命令重命名:(无需手动加入暂存区)
06—移动文件
git demo.txt home
07—查看文件的前后变化
# 获取commitID
git log --pretty=oneline demo.html
# 通过commitID获取文件变化信息
git show [commitID
# 查看所有版本的改动信息
git log -p demo.html
获取指定版本的变动信息:
查看所有版本的改动信息:
08—一键还原
# 查看当前文件与上一次提交的不同
git diff
# 恢复上一次提交的状态
git checkout -- demo.html
查看文件与上一次提交的不同
恢复上一次提交的状态:
09—撤销追踪
# 撤销追踪
git reset HEAD demo.demo.html
10—回退版本
# 有多少个[^],就代表回退多少个版本
git reset --hard HEAD^
# 通过版本号回退
git reset --hard [commitID]
# 某一文件回到指定版本
git checkout [commitID] -- demo.html
回退到上一个版本:
通过版本号回退:
指定文件回退到指定版本:
11—上传至远程仓库
git push origin master
12—创建标签
# 给当前版本创建标签
git tag v1.0
# 查看当前版本标签
git tag
# 给指定版本加标签
git tag v2.0 [commitID]
# 删除标签
git tag -d v1.0
13—切换、删除分支
# 创建分支
git branch dev
# 查看分支
git branch
# 切换分支
git checkout dev
# 删除分支
git branch -d dev
# 强制删除分支
git branch -D dev
创建分支:
切换分支:
删除分支:(注意:不可删除当前所在的分支以及commit但没有push的分支,其中第二种情况可以使用强制删除!)
14—分支合并
# 合并分支
git merge dev
合并分支:
15—解决合并时的冲突
# 忽略其他分支的代码,保留当前分支的代码
git merge --abort
当master与dev分支同时对一行代码进行不同的修改时,将dev合并到master会出现无法合并的提示(如下)
此时看到导致冲突那行代码可以看到如下内容:
第一行HEAD表示当前分支修改的内容(master),第二行表示dev分支修改的内容。此时需要我们程序员手动解决冲突。
①忽略其他分支的代码,保留当前分支代码:
②手动解决(删除特殊符号,并选择保留解决冲突后需要保留的代码)
修改后的代码:
此时使用命令git status,发现当前文件为加入暂存区,使用命令git add .将该文件加入暂存区,并使用命令git commit提交和添加解决冲突的说明。
使用命令git commit进入该编辑页面,添加说明信息后保存退出即可!
使用命令git log查看提交信息:
16—查看版本路线
git log --oneline --graph
17—删除远程仓库的分支
git push origin --delete dev
18—拉取远程仓库
# 拉取默认分支
git fetch
# 拉取指定分支
git fetch origin dev
pull 根据不同的配置,可等于 fetch + merge 或 fetch + rebase(以后再做具体的了解)。
👇扫描二维码关注