【Git】常见命令(仅笔记)

news/2024/9/19 16:59:12 标签: git, 笔记, elasticsearch, linux, c++

文章目录

  • 创建/初始化本地仓库
  • 添加本地仓库配置项
  • 提交文件
  • 查看仓库状态
  • 回退仓库
  • 查看日志
  • 分支
  • 删除文件
  • 暂存工作区代码
  • 远程仓库
  • 使用 `.gitigore` 文件让 git 不追踪一些文件
  • 标签

创建/初始化本地仓库

git init

添加本地仓库配置项

git config -l #以列表形式显示配置项

git config user.name "ljh" #配置user.name
git config user.email "123123@qq.com" #配置user.email

git config --unset user.name #重置user.name
git config --unset user.email #重置user.email

git config --global user.name "ljh" #设置当前机器上所有的本地仓库配置
git config --global --unset user.name #gloal设置的也需要带gloal删除

git config [可加--global] alias.[别名] '本名'
#例:git config [--global] alias.st 'status'
git status = git st

提交文件

git add [file] #将工作区的文件提交到暂存区
git add -f [file] #强制添加

git commit -m "描述" #将暂存区文件提交到版本库

查看仓库状态

git status #显示工作区和暂存区修改的文件

git diff [file] #查看工作区和暂存区 file 文件的区别

回退仓库

# 默认为 mixed
git reset --soft [commitID] [filename] #只回退版本库
git reset --mixed [commitID] [filename] #回退版本库和暂存区
git reset --hard [commitID] [filename] #都回退,版本库、暂存区、工作区 

git reset --mixed HEAD #HEAD表示版本库当前版本,HEAD^为上版本,HEAD^^为上上版本
#centenOS:可能因为mixed是默认方式,所以不用--mixed,直接-- 即可

git checkout -- [filename] #撤销,修改工作区,让工作区和暂存区一致?

查看日志

git log #查看日志
git log [file] #只查看指定文件的日志
git log --prettey=oneline #以列形式显示日志,好像是Ubentu的指令
git log -p #有格式的显示日志
git log --graph --abbrev-commit #图形化的显示日志
git log -n #显示前n行日志

git reflog #本地所有操作的日志

git cat-file -p [commitID] #查看objects对象

分支

git branch #查看所有分支,带*的是当前工作分支
git branch [name] #新建分支
git branch -d [name] #删除分支,只能删除其他分支,不能删除当前工作分支
git branch -D [分支] #强制删除分支

git branch -r #查看远程仓库的分支
git branch -a #本地和远程的分支都查看

git branch -v #查看本地分支信息
git branch -vv #查看本地和远程的分支连接

git branch --set-upstream-to=[远程分支] [本地分支] #建立连接

git remote show origin #查看remote地址,远程分支,还有和本地分支的对应信息等
git remote prune origin #删除远程仓库已删除的分支

git checkout [分支名] #切换分支
git checkout -b [分支名] #创建并切换分支
git checkout -b [分支名] [远程分支,例 origin/dev] #创建并切换,并建立连接

git merge [分支] #合并分支到当前工作分支
git merge --no-ff [分支] #非Fast Work模式,在git log中可以看到不同分支
git merge --no-ff -m "描述" [分支] 

删除文件

git rm [file] #删除并提交

暂存工作区代码

git stash #暂存工作区新代码
git stash list #查看都存了什么
git stash pop #将暂存的代码拿出来,恢复现场,但会删除stash中内容
git stash apply #恢复现场,但是不删除stash内容
git stash apply stash@{0} #恢复指定内容(现场)

远程仓库

git clone [链接] #克隆远程仓库

git push #将本地仓库的东西推送给远程仓库
git push [远程仓库名] [本地分支]:[远程分支]
git push [远程仓库] [分支] #若本地分支和远程分支,则只需写一个

git pull [远程仓库] [远程分支]:[本地分支] #将远程仓库新的东西拉取

git remote #查看远程仓库名称
git remove -v #显示本地仓库权限,fetch和push之类的

gitigore__git__131">使用 .gitigore 文件让 git 不追踪一些文件

.gitignore文件

*.so #不追踪所有 .so结尾的文件

!b.so #不忽略 b.so
git check-ignore -v [文件] #查看该文件为何被忽略
git add -f [文件名] #强制添加文件

标签

git tag #查看有哪些标签
git tag [标签名,例v1.0] #给最近的 commit 打标签
git tag [标签名] [commit ID] #给指定的 commit 打标签
git tag -a [标签名] -m "描述" [commit ID] #打标签同时添加描述

git tag -d [标签名] #删除标签

git show [标签名] #显示标签详细信息

git push [仓库名,例:origin] [本地标签]:[远程标签]
git push [仓库名] --tags #将所有标签提交
# 删除远程分支的方式
# 先删除本地,再push
git tag -d [标签]
git push origin :[远程标签]

以上就是本篇博客的所有内容,感谢你的阅读
如果觉得本篇文章对你有所帮助的话,不妨点个赞支持一下博主,拜托啦,这对我真的很重要。
在这里插入图片描述


http://www.niftyadmin.cn/n/5665871.html

相关文章

机器学习-监督学习:朴素贝叶斯分类器

机器学习-监督学习:朴素贝叶斯分类器 一、引言 在机器学习的广阔领域中,监督学习占据着核心地位,它通过已知的数据集(包括输入和输出)来训练模型,以期对新的、未见过的数据做出准确的预测。朴素贝叶斯分类…

Python基础(六)——PyEcharts数据可视化初级版

案例 【前言:为了巩固之前的Python基础知识(一)到(五),并为后续使用Python作为数据处理的好帮手,我们一起来看几个例子】 使用工具:Echarts Echarts 是一个由百度开源的数据可视化…

JSON.parseArray 内存溢出

实际上我的JSON如下: 如果用以下代码:JVM的内存直接飙到内存溢出,报错OutOfMemoryError: Java heap space Object oo JSON.parseArray(json, TestVo.class) 如果我换成了这样,就没事: Object oo JSON.parseObject(…

闲鱼网页版开放,爬虫的难度指数级降低。

爬虫,可以说是程序员最基础的热手项目。 之前我也一直说阿里系的签名系统搞得太复杂,风控太高,很不利于正常的自动化工具开发,这对于需要阿里应用的客户来说,也是一个很难覆盖的成本支出不是。 当然,我做项…

计算机人工智能前沿进展-大语言模型方向-2024-09-14

计算机人工智能前沿进展-大语言模型方向-2024-09-14 1. Multimodal learning using large language models to improve transient identification of nuclear power plants B Qi, J Sun, Z Sui, X Xiao, J Liang - Progress in Nuclear Energy, 2024 使用大型语言模型进行多…

PgMP和CSPM-3有什么不同?是什么关系?

CSPM-3和PgMP在项目管理领域都是具有权威性和认可度的证书,但两者并不直接等同。CSPM-3是中国国内的项目管理专业人员能力等级证书,而PgMP则是美国项目管理协会推出的项目集管理专业人士认证。下面给大家讲解一下他们的区别。 一、概念不同 什么是CSPM…

linux下io事件管理:单个I/O通讯

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、I/O是什么?二、单个I/O服务端通讯1.定义客户端, 前言 1、使用微信:发送文字、图片、视频等内容,如何实现&a…

21. 什么是MyBatis中的N+1问题?如何解决?

N1 问题是指在进行一对多查询时,应用程序首先执行一条查询语句获取结果集(即 1),然后针对每一条结果,再执行 N 条额外的查询语句以获取关联数据。这个问题通常出现在 ORM 框架(如 MyBatis 或 Hibernate&…