当前位置: 首页 > news >正文

git命令笔记

文章目录

  • 0、参考文档
  • 1、常用指令
      • git checkout系列
      • git pull系列
      • git push系列
      • git reset系列
      • git branch系列
      • git log系列
      • git revert 撤销某次提交
      • git diff
      • 其他
  • 2、查看和修改用户名和邮箱,生成密钥
  • other

0、参考文档

  • Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!

1、常用指令

git checkout系列

  • git checkout [–] file/目录:使用暂存区内容覆盖工作区,在工作区修改了,不想要了,可以用这个操作。
    • 如果某个目录被污染,想一次还原,可以删除那个目录下面的内容,然后:git checkout .
  • git checkout -b 分支:创建并切换到新分支
  • git checkout 分支
    • 如果本地有分支,切换到该分支。
    • 如果本地没有分支,但远程有分支,创建一个关联到远程分支的本地分支。
    • 本地远程都没有,就报错。
  • git checkout commitid
    • 回退到commitid对应的那个版本。会处于分离头指针的状态,通常用来查看某文件的之前版本。

git pull系列

  • git pull origin 远程分支名:拉最新远程分支,并与当前分支合并
  • git pull rebase 对方强推之后,需要用这个才能拉下代码。(有时候好像没用)
  • git pull:将远程仓库代码拉到工作区

git push系列

  • git push -u origin 本地分支名:在创建了本地分支,但是没有对应的远程分支时,创建一个与本地分支对应的远程分支
  • git push origin --delete 分支:删除远程分支
  • git push origin liteOS-dev:liteOS-dev:将liteOS-dev分支推送到远程
    • 如果本地分支很远程分支名一样,可写为:git push origin liteOS-dev

git reset系列

  • git reset --soft,然后合并提交之后,会导致本地分支和远程对不上,此时push不上去,需要push -f强推。(将本地仓库回退,工作区和暂存区修改保留。)
  • git reset/git reset --mixed,(将本地仓库、暂存区回退,工作区修改保留)
  • git reset --hard HEAD :将工作区代码回退到本地仓库的最新版本。
  • git reset --hard HEAD^ :将工作区代码回退到本地仓库的最新版本的上一个版本
  • git reset --hard HEAD~100:将工作区代码回退到本地仓库的最新版本的前100个版本

git branch系列

  • git branch :查看本地分支
  • git branch -r:查看远程分支
  • git branch -a:查看所有分支(本地和远程)
  • git branch name:创建分支
  • git branch –D name:删除本地分支
  • git branch -vv: 查看本地分支与远程分支的连接情况
  • git branch -m oldName newName 本地分支重命名(还没有推送到远程)
    • https://www.jianshu.com/p/cc740394faf5

git log系列

  • git log:查看commit的历史记录
  • git log 文件:查看文件的历史提交情况
  • git log --oneline:简略查看,只查看历史版本的版本号和对应的commit描述
  • git log --oneline --before={2022-04-02} --after={2022-02-01} --author=xxx --no-merges
    • 查看指定时间范围内的提交记录
  • git log remotes/origin/xxx 查看本地xxx对应的远程xxx的log

git revert 撤销某次提交

  • git revert commit 撤销指定的版本,撤销也会作为一次提交进行保存。
  • git revert HEAD 撤销前一次 commit
  • git revert HEAD^ 撤销前前一次 commit
  • git revert 用法

git diff

  • git diff <文件>:查看文件修改了什么内容
  • git diff 分支1 分支2:查看两分支的差异
    • git diff --name-only 分支1 分支2:只看两分有差异的文件
  • git diff 分支1 分支2 文件名:查看两分支的指定文件的差异

其他

  • git show commitid:查看某个commitid的具体修改内容

    • git show --name-only commitid:只显示修改的文件名
  • git init :把这个目录变成git可以管理的仓库

  • git add:把文件从工作区添加在暂存区

  • git commit -am ‘说明’:将暂存区的东西全部提交到本地仓库,并添加修改说明

  • git status:查看状态

    • git status -uall:展开目录里面的文件
  • git merge 分支名:合并某分支到当前分支

  • git cherry-pick 055996b:

    • 选择某个commit版本提交到当前分支
    • 如果有冲突先解决冲突,然后git cherry-pick --continue 继续完成cherry-pick
  • git clone https://github.com/xxx/study.git:克隆远程仓库到本地

  • git blame 查看谁修改的

  • git blame -L start, end

  • git remote -v 查看仓库url链接

2、查看和修改用户名和邮箱,生成密钥

  • 查看用户名和邮箱
    • git config user.name
    • git config user.email
  • 修改用户名和邮箱
    • git config --global user.name “xxx”
    • git config --global user.email “xxx@xxx.com”
  • 生成密钥
    • ssh-keygen -t rsa -C “xxx@xxx.com”

other

  • Github域名加上1s,在线VS Code阅读源码神器诞生
  • https://github1s.com/xxx
http://www.lryc.cn/news/310315.html

相关文章:

  • 微服务day03-Nacos配置管理与Nacos集群搭建
  • DFS剪枝
  • 基于SpringBoot多模块项目引入其他模块时@Autowired无法注入
  • 每日一题——LeetCode1566.重复至少K次且长度为M的模式
  • 代码随想录刷题笔记-Day27
  • 【小沐学GIS】QGIS安装和入门使用
  • 黑马程序员——接口测试——day03——Postman断言、关联、参数化
  • Unreal触屏和鼠标控制旋转冲突问题
  • Vins-Moon配准运行
  • MSCKF3讲:后端理论推导(上)
  • 群控代理IP搭建教程:打造一流的网络爬虫
  • 【IO流系列】字符流练习(拷贝、文件加密、修改文件数据)
  • 华为云磁盘挂载
  • 通过大语言模型理解运维故障:评估和总结
  • SVN教程-SVN的基本使用
  • 【MySQL】数据查询——DQL基本数据库查询
  • 机器人持续学习基准LIBERO系列9——数据集轨迹查看
  • uniapp中canvas的基础使用
  • 中科大计网学习记录笔记(十七):拥塞控制原理 | TCP 拥塞控制
  • 老隋蓝海项目有人盈利的吗?怎么做比较好些呢?
  • 递归与递推(蓝桥杯 c++)
  • ArduinoTFTLCD应用
  • 《秦时明月》IP新高度:与陕西历史博物馆共同书写文化传承新篇章!
  • 2、事件机制、DOM操作、jquery对尺寸操作、jquery添加和删除
  • YOLOv6-Openvino和ONNXRuntime推理【CPU】
  • C语言:结构体(自定义类型)知识点(包括结构体内存对齐的热门知识点)
  • springboot240基于Spring boot的名城小区物业管理系统
  • Day13:信息打点-JS架构框架识别泄漏提取API接口枚举FUZZ爬虫插件项目
  • AJAX 学习笔记(Day1)
  • leetcode 740.删除并活得点数