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

git常用命令及概念对比

查看日志

git config --list 查看git的配置

git status 查看暂存区和工作区的变化内容(查看工作区和暂存区有哪些修改)

git log 查看当前分支的commit 记录

git log -p commitID详细查看commitID的具体内容

git log -L :funcName:fileName 查看fileName文件中funcName函数的修改历史

git log --pretty=oneline 简易的查看commit 记录(直接用git log --oneline更方便一些)

git log --graph --pretty=oneline --abbrev-commit 查看分支合并图

git diff file.txt 比较工作区和暂存区内file.txt 的区别

git diff HEAD -- file.txt 比较查看版本库和工作区中的file.txt的区别

git diff --cached file.txt 比较暂存区和本地仓库

git reflog 用在回退时的场景, 当发生版本回退时,git log只能看到HEAD指针的祖先。而git reflog可以看到左右commit 记录

git show commitID 查看commitID这次提交的详细内容

本地仓库

git add file.txt 添加文件file.txt到暂存区 (也可以用git add . 将当前文件夹中所有修改都添加到暂存区)

git commit -m "xxx" 提交暂存区的内容到本地仓库 ,并添加评论"xxx", m是message的缩写

git commit --amend 上一次commit 被reviewer拒了后,做出修改后提交,要加--amend 参数

拉取远程仓库内容

git pull 用远程分支更新本地分支内容(类似于SVN中的update操作)

git pull origin master:dev 将远程库origin中的master 分支内容,更新到本地的dev分支上(如果是使用git pull origin master, 是将远程库origin中的master 分支内容,更新到当前分支上)

git clone与git pull的区别:git clone是复制一个远程库到本地,生成一个本地仓库。git pull是拉取远程库中的分支,合并到本地库中,git pull = git fetch +git merge

推送

git push -u origin master 将本地的当前分支master推送到远程(将本地库的内容推送到远程)(第一次运行,由于远程库是空的,要加-u参数,后续不用加该参数)

git push origin master 将本地的master分支推送到origin主机的master分支。如果master不存在,则会被新建。

git push origin v1.0 将v1.0这个标签推送到远程

git push origin --tags 将本地的标签一次性全部推送到远程

git push origin :ref/tags/v0.9 删除远程上的标签v0.9

git clone git@github.com:someoneAccount/repoName 克隆远程库repoName到本地

分支

git branch 查看本地所有分支

git branch -a 查看远程和本地的所有分支

git branch -d dev 删除dev分支

git branch -D 分支名 用-D参数来删除一个没有被合并过的分支

git checkout -- file.txt 用暂存区内的file.txt替换到工作区内的file.txt(如果暂存区是空的,就用版本库中file.txt替换掉工作区的file.txt)

git checkout xxx 切换到xxx分支

git checkout -b dev 创建一个新分支dev,并切换到该分支(该命令相当于两个命令:git branch dev和git checkout dev)

存贮

git stash 将当前分支的工作现场储藏起来,等以后回复现场后继续工作

git stash list查看当前分支保存起来的工作现场

git stash pop 恢复工作现场(相当于两个命令:git stash apply 和git stash drop)

git stash apply stash@{0} 恢复0号工作现场

git clean 清除untracked files

标签

git tag v1.0 给当前分支打上标签v1.0

git tag 查看所有标签

git tag v1.0 commitId 给commitId这个提交打上标签v1.0

git show v1.0 查看v1.0这个标签内容

git tag -d v0.1 删除v0.1这个本地的标签

合并

git rebase master

将当前分支的修改,在master分支上重新实现一下(rebase叫做变基, 就是把当前分子的根基改变一下)

git rebase master

git merge master

将master分支合并到当前分支,合并的步骤是将master 的多次提交合并成一次新的提交,然后再将这个新的提交实现在当前分支上。

git merge master

git merge dev 将dev分支合并到当前分支

git merge --no-ff -m "comments xxxx" dev 以no-ff的形式合并dev分支到当前分支

759365b8544a497c8f424c2dee85e29d.png

复制一个特定的提交到当前分支

用途:修复bug用:在某一个分支上已经修复了bug,将该提交内容commitId应用到当前的分支

git cherry-pick commitId

撤销操作

git restore

git restore --staged file 撤销git add操作,就是把文件从缓存区移动到工作区.(针对暂存区的操作)

git rm

git rm file.txt 然后git commit 从版本库中删除file.txt(本地工作区内删除,直接用rm file.txt即可)

git reset

回滚到对应的commit-id,相当于是删除了commit-id以后的所有的提交,并且不会产生新的commit-id记录,如果要推送到远程服务器的话,需要强制推送-f

git reset HEAD file.txt 清空暂存区(适用情况:写了一些胡话,已经提交到暂存区,要撤销), 其实是拉去本地仓库中最近一次提交(HEAD指针指向)到暂存区,工作区内容没有改变。

git reset --hard HEAD^ 回退到上一个版本(撤销git commit,同时也撤销git add和 工作区内容)

git reset --soft HEAD^ 撤销git commit,但不撤销git add (工作区内容依旧保持)

git revert

是反做撤销其中的commit-id,然后重新生成一个commit-id。本身不会对其他的提交commit-id产生影响,如果要推送到远程服务器的话,就是普通的操作git push就好了

git revert commit_id

更换仓库

git remote -v 查看远程库信息(也可以用git remote 查看简易的远程库信息)

git remote rm origin 删除远程库

git remote add origin git@github.com:yourAccount/repoName 将远程仓库repoName与本地仓库相关联,并将远程仓库命名为origin

 

 

 

相关文章:

git常用命令及概念对比

查看日志 git config --list 查看git的配置 git status 查看暂存区和工作区的变化内容(查看工作区和暂存区有哪些修改) git log 查看当前分支的commit 记录 git log -p commitID详细查看commitID的具体内容 git log -L :funcName:fileName 查看file…...

57、python 环境搭建[for 计算机视觉从入门到调优项目]

从本节开始,进入到代码实战部分,在开始之前,先简单进行一下说明。 代码实战部分,我会默认大家有一定的编程基础,不需要对编程很精通,但是至少要会 python 的基础语法、python 环境搭建、pip 的使用;C++ 要熟悉基础知识和基础语法,会根据文章中的步骤完成 C++ 的环境搭…...

K8S-应用访问

1 service对象定位 2 Service 实践 手工创建Service 根据应用部署资源对象,创建SVC对象 kubectl expose deployment nginx --port80 --typeNodePortyaml方式创建Service nginx-web的service资源清单文件 apiVersion: v1 kind: Service metadata:name: sswang-ngi…...

商智C店H5性能优化实战

前言 商智C店,是依托移动低码能力搭建的一个应用,产品面向B端商家。随着应用体量持续增大,考虑产品定位及用户体验,我们针对性能较差页面做了一次优化,并取得了不错的效果,用户体验值(UEI&…...

Unity 使用 Plastic 同步后,正常工程出现错误

class Newtonsoft.Json.Linq.JToken e CS0433:类型"JToken"同时存在于"Newtonsoft.Json.Net20,Version3.5.0.0,Cultureneutral,,PublicKeyToken30ad4fe6b2a6aeed"和"Newtonsoft.Json, Version12.0.0.0,Cultureneutral,PublicKeyToken30ad4fe6b2a6aeed…...

详细设计文档该怎么写

详细设计文档是软件开发过程中的一个关键阶段,它为每个软件模块的实现提供了详细说明。这份文档通常在概要设计阶段之后编写,目的是指导开发人员如何具体实现软件的功能。以下是撰写详细设计文档的步骤和一些示例: 步骤和组成部分 引言 目的…...

集团企业OA办公协同平台建设方案

一、企业对协同应用的需求分析 实现OA最核心、最基础的应用 业务流转:收/发文、汇报、合同等各种审批事项的业务协作与办理 信息共享:规章制度、业务资料、共享信息资源集中存储、统一管理 沟通管理:电子邮件、手机短信、通讯录、会议协作等…...

Spring Security之认证

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 Spring Security之认证 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、什么是Spring…...

智能语音机器人NXCallbot

受出海公司业务全球化的影响,智能客服逐渐从便捷应用变为市场刚需。新基建七大领域中,人工智能及场景应用的基础建设是最核心的领域,而智能客服作为商业化实际应用的核心场景之一,能提升企业运营效率,为行业客户赋能。…...

Vue 3中toRaw和markRaw的使用

Vue 3的响应性系统 在Vue 3中,响应性系统是构建动态Web应用程序的关键部分。Vue使用响应性系统来跟踪依赖关系,使数据更改能够自动更新视图。这使得Vue应用程序在数据变化时能够高效地更新DOM。Vue 3引入了新的Proxy对象来替代Vue 2中的Object.definePro…...

移动神器RAX3000M路由器不刷固件变身家庭云之三:外网访问家庭云

本系列文章: 移动神器RAX3000M路由器变身家庭云之一:开通SSH,安装新软件包 移动神器RAX3000M路由器变身家庭云之二:安装vsftpd 移动神器RAX3000M路由器变身家庭云之三:外网访问家庭云 移动神器RAX3000M路由器变身家庭云…...

基于多反应堆的高并发服务器【C/C++/Reactor】(中)线程池的启动和从线程池中取出一个反应堆实例

一、线程池的启动 (主线程) // 启动线程池 (主线程) void threadPoolRun(struct ThreadPool* pool) {/*线程池被创建出来之后,接下来就需要让线程池运行起来,其实就是让线程池里的若干个子线程运行起来*//…...

go语言gin框架的基本使用

1.首先在linux环境上安装go环境,这个网上搜搜就行 2.初始化一个go mod,网上搜搜怎么初始化 3.下面go代码的网址和端口绑定自己本机的就行 4.与另一篇CSDN一起食用,效果更好哟---> libcurl的get、post的使用-CSDN博客 package mainimpo…...

TypeScript 从入门到进阶之基础篇(六) 类型(断言 、推论、别名)| 联合类型 | 交叉类型

系列文章目录 TypeScript 从入门到进阶系列 TypeScript 从入门到进阶之基础篇(一) ts基础类型篇TypeScript 从入门到进阶之基础篇(二) ts进阶类型篇TypeScript 从入门到进阶之基础篇(三) 元组类型篇TypeScript 从入门到进阶之基础篇(四) symbol类型篇TypeScript 从入门到进阶…...

Linux操作系统基础(14):文件管理-文件属性命令

1. 查看文件属性 stat命令用于显示文件的详细信息,包括文件的权限、所有者、大小、修改时间等。 #1.显示文件信息 stat file.txt#2.显示文件系统状态 stat -f file.txt#3.显示以时间戳的形式文件信息 stat -t file.txt2. 修改文件时间戳 touch命令用于创建新的空…...

metaSPAdes,megahit,IDBA-UB:宏基因组装软件安装与使用

metaSPAdes,megahit,IDBA-UB是目前比较主流的宏基因组组装软件 metaSPAdes安装 GitHub - ablab/spades: SPAdes Genome Assembler #3.15.5的预编译版貌似有问题,使用源码安装试试 wget http://cab.spbu.ru/files/release3.15.5/SPAdes-3.15.5.tar.gz tar -xzf SP…...

Apache、MySQL、PHP编译安装LAMP环境

1. 请简要介绍一下LAMP环境。 LAMP环境是一个在Linux操作系统上搭建的服务器环境组合,由Apache、MySQL、PHP三种软件构成。这种环境是开源的,跨平台的,并且由于各组件经常一起使用,因此具有高度的兼容性。 其中,Apac…...

L1-087:机工士姆斯塔迪奥

题目描述 在 MMORPG《最终幻想14》的副本“乐欲之所瓯博讷修道院”里,BOSS 机工士姆斯塔迪奥将会接受玩家的挑战。 你需要处理这个副本其中的一个机制:NM 大小的地图被拆分为了 NM 个 11 的格子,BOSS 会选择若干行或/及若干列释放技能&#x…...

如何做一个炫酷的Github个人简介(3DContribution)

文章目录 前言3D-Contrib第一步第二步第三步第四步第五步第六步 前言 最近放假了,毕设目前也不太想做,先搞一点小玩意玩玩,让自己的github看起来好看点。也顺便学学这个action是怎么个事。 3D-Contrib 先给大家看一下效果 我的个人主页&am…...

基于单片机的护理床控制器设计

一、摘要 随着科技的不断发展,人们对生活质量的要求越来越高,特别是在医疗保健领域。护理床作为医院病房中常见的设备,其功能和性能直接影响到患者的康复进程。本文主要介绍了一种基于单片机的护理床控制器设计,该控制器可以实现…...

《3D数学基础-图形和游戏开发》阅读笔记 | 3D数学基础 (学习中 1.6更新)

文章目录 3D数学基础矢量/向量什么是向量点与矢量的关系 向量基础运算 向量加法向量基础运算 数乘 线性组合 - 坐标系的基如果选择不同的基向量会怎么样?- 张成(Span)的空间三维向量的张成空间线性相关与线性相关 矩阵与线性变换矩阵-几何意义线性变换矩阵乘法与线性…...

解锁测试性能瓶颈:深度探讨JMeter分布式性能测试!

在做后端服务器性能测试中,我们会经常听到分布式。但你是否了解分布式呢?今天,我们就来给大家讲讲,在企业实战中,如何使用分布式进行性能测试,实战过程中,又有哪些地方要特别注意? 0…...

SiC电机控制器(逆变器)发展概况及技术方向

SiC电机控制器(逆变器)发展概况及技术方向 1.概述2.电动汽车动力系统设计趋势3.栅极驱动器和驱动电源配置4.结论 tips:资料来自网上搜集,仅供学习使用。 1.概述 2022年到2023年,第三代半导体碳化硅被推上了新的热潮。…...

useContext

可以跨组件传值 其实主要的就是三步 1、const xxx React.createContext();创建一个context 2、<xxx.Provider value{{ num, setNum }}>父组件设置要传递的值 3、const { num, setNum } React.useContext(xxx);子组件下使用 特点&#xff1a; 1、可以有多个xxx.Pr…...

Java数据结构:1. 数据结构前置知识

文章目录 一、初识数据结构二、初识集合框架1. 什么是集合框架2. 集合框架的重要性3. 背后所涉及的数据结构以及算法 三、时间复杂度空间复杂度1. 算法效率2. 时间复杂度&#xff08;1&#xff09;概念&#xff08;2&#xff09;大O的渐进表示法&#xff08;3&#xff09;推导大…...

Vue中使用Element UI的Table组件实现嵌套表格(最简单示例)

以下是一个简单的示例代码&#xff0c;演示如何在Vue中使用Element UI的Table组件实现嵌套表格&#xff1a; html <template><div><el-table :data"tableData" style"width: 100%"><el-table-column prop"name" label&quo…...

如何使用RESTful API构建 web 应用程序

RESTful API 是一种设计风格&#xff0c;用于构建可扩展、灵活和可维护的 web 应用程序。它是一种基于 HTTP 协议的架构风格&#xff0c;旨在提供一组规范和约束&#xff0c;以便客户端和服务器之间的通信更加简单和可预测。 RESTful API 通过使用 HTTP 动词来定义资源的操作&…...

开启Android学习之旅-4-Android集成FontAwesome

FontAwesome 是一个非常标准、统一风格的图标库。产品经理在原型中应用了很多图标都是FontAwesome。正常流程是 UI 需要再手工绘制或在 iconfont 或 iconpark 网站挨个找&#xff0c;如果在 Android 直接使用不是省了一步&#xff08;注意版权问题&#xff0c;使用免费版&#…...

Qt——TCP UDP网络编程

目录 前言正文一、TCP二、UDP1、基本流程2、必备知识 三、代码层级1、UDP服务端 END、总结的知识与问题1、如何获取QByteArray中某一字节的数据&#xff0c;并将其转为十进制&#xff1f;2、如何以本年本月本日为基础&#xff0c;获取时间戳&#xff0c;而不以1970为基础&#…...

有什么安全处理方案可以有效防护恶意爬虫

常见的爬虫 有百度爬虫、谷歌爬虫、必应爬虫等搜索引擎类爬虫&#xff0c;此类爬虫经常被企业用于提高站点在搜索引擎内的自然排名&#xff0c;使得站点在各大搜索引擎中的排名能够提高&#xff0c;进一步通过搜索引擎来进行引流为企业增加业务流量。 恶意爬虫与合法、合规的搜…...

网站建设分哪些类别/建站seo是什么

解释器(英语&#xff1a;Interpreter)&#xff0c;又译为直译器&#xff0c;是一种电脑程序能够把高级编程语言一行一行直接转译运行。解释器不会一次把整个程序转译出来&#xff0c;只像一位“中间人”&#xff0c;每次运行程序时都要先转成另一种语言再作运行&#xff0c;因此…...

番禺网站建设培训学校/seo职业培训学校

春运&#xff0c;对于有的人而言是归心似箭&#xff0c;对于有的人而言是难舍难分。在踏上这条迁徙之路时&#xff0c;这些乘客的面孔、表情虽各不相同&#xff0c;但他们都有一个共同的目的地&#xff1a;家。 昆明火车站&#xff0c;徐兴齐带着买给孙女的玩具和书包准备上车。…...

wordpress 主题 相册/个人网页设计作品模板

一、小程序概述 2017 年 1 月 9 日小程序正式上线&#xff0c;腾讯开放了个人开发者开发小程序&#xff0c;小程序从此就开始火爆&#xff0c;这一年&#xff0c;小程序狂揽 4 亿用户、1.7 亿的日常活跃&#xff0c;上线 58 万个。这是一个巨大的机会&#xff0c;对于企业宣传&…...

有没有做盗版电影网站犯罪的/国外网站制作

目录6. IIS 配置的进阶6.1 配置主目录&#xff08;1&#xff09; 查看系统默认网站主目录&#xff08;1&#xff09; 建立新的网站主目录6.2 配置默认文档6.3 进行访问限制6.3.1 限制带宽使用6.3.2 连接限制&#xff08;1&#xff09;限制连接数&#xff08;2&#xff09;连接超…...

wordpress smzdm主题/痘痘该如何去除效果好

1.黑盒测试&#xff1a;反向思维&#xff0c;越不正常的思考越干的好 2.白盒测试&#xff1a;与开发者差不多&#xff0c;都要代码 3.根据粒度分&#xff1a; &#xff08;1&#xff09;方法测试&#xff1a;测试一个方法的正确性 &#xff08;2&#xff09;单元测试&#xff1…...

网站做端口是什么问题/关键词优化到首页怎么做到的

网站提高性能的方案有很多&#xff0c;网站架构方面考虑&#xff0c;最初的性能优化可以考虑提高单台服务器的配置。把数据库和代码分别部署在两台服务器&#xff0c;页面缓存&#xff0c;数据缓存&#xff0c;静态化&#xff0c;分布式&#xff0c;代码读写分离&#xff0c;负…...