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

Git 常用命令大全与详解

Git 是一种广泛使用的分布式版本控制系统。无论是管理个人项目还是进行团队协作,掌握 Git 的常用命令都是开发者必备的技能之一。本文将介绍一些常用的 Git 命令,并对其进行详细说明。

1. 基础命令

初始化仓库
  • git init:在当前目录下初始化一个新的 Git 仓库。
克隆仓库
  • git clone <repository-url>:从远程仓库克隆一份到本地。将 <repository-url> 替换为仓库的链接地址(如 GitHub、GitLab 等),即可下载该仓库到当前目录。
检查状态
  • git status:查看当前仓库状态,包括未跟踪的文件、修改的文件、暂存区文件等。

2. 变更管理

添加文件
  • git add <file>:将文件添加到暂存区,准备提交。
  • git add .:添加所有更改的文件(当前目录及子目录下)。
提交更改
  • git commit -m "message":将暂存区的文件提交到仓库并添加提交信息。
  • git commit -a -m "message":跳过 git add 步骤,直接提交已修改的文件。

3. 分支管理

分支是 Git 的强大功能之一,可以用来隔离不同的功能开发。

创建分支
  • git branch <branch-name>:创建一个新分支,但不会切换到该分支。
切换分支
  • git checkout <branch-name>:切换到指定分支。
  • git checkout -b <branch-name>:创建并切换到新分支。
删除分支
  • git branch -d <branch-name>:删除指定分支(本地)。
  • git push origin --delete <branch-name>:删除远程分支。

4. 合并分支

合并分支
  • git merge <branch-name>:将指定分支合并到当前分支。通常在开发完成后,将功能分支合并到主分支。
处理冲突

在合并过程中,可能会遇到冲突。Git 会提示你解决冲突。完成后,可以执行以下命令:

  • git add .
  • git commit -m "Resolve merge conflict"

5. 查看提交历史

查看提交日志
  • git log:查看提交历史。
  • git log --oneline --graph --all:以图形化简洁显示所有分支的提交历史。
查看差异
  • git diff:查看当前工作目录和暂存区的差异。
  • git diff <branch-name>:查看当前分支与指定分支的差异。

6. 远程仓库操作

查看远程仓库
  • git remote -v:查看已添加的远程仓库。
添加远程仓库
  • git remote add <name> <url>:添加新的远程仓库。
拉取远程仓库更新
  • git pull:从远程仓库获取最新内容并合并到当前分支。
推送到远程仓库
  • git push:将本地分支的内容推送到远程仓库。

7. 回滚操作

撤销文件修改
  • git checkout -- <file>:丢弃指定文件的工作区更改。
重置提交
  • git reset --soft <commit>:重置到指定提交,保留更改并暂存。
  • git reset --hard <commit>:将仓库重置到指定提交,丢弃所有更改。

8. Stash 暂存

保存当前修改
  • git stash:将当前工作目录的修改保存到堆栈中,便于切换分支。
恢复暂存内容
  • git stash pop:应用并移除最近一次 stash 内容。

9. 标签管理

创建标签
  • git tag <tag-name>:创建标签(默认指向最新提交)。
  • git tag -a <tag-name> -m "message":创建带有描述的标签。
推送标签
  • git push origin <tag-name>:将标签推送到远程仓库。

10. Git 配置

设置用户名和邮箱
  • git config --global user.name "Your Name":设置全局用户名。
  • git config --global user.email "you@example.com":设置全局邮箱。
查看 Git 配置
  • git config --list:查看所有 Git 配置信息。

相关文章:

Git 常用命令大全与详解

Git 是一种广泛使用的分布式版本控制系统。无论是管理个人项目还是进行团队协作&#xff0c;掌握 Git 的常用命令都是开发者必备的技能之一。本文将介绍一些常用的 Git 命令&#xff0c;并对其进行详细说明。 1. 基础命令 初始化仓库 git init&#xff1a;在当前目录下初始化…...

执行flink sql连接clickhouse库

手把手教学&#xff0c;flink connector打通clickhouse大数据库&#xff0c;通过下发flink sql&#xff0c;来使用ck。 组件版本jdk1.8flink1.17.2clickhouse23.12.2.59 1.背景 flink官方不支持clickhouse连接器&#xff0c;工作中难免会用到。 2.方案 利用GitHub大佬提供…...

什么是C++中的友元函数和友元类?

友元函数&#xff08;Friend Function&#xff09;和 友元类&#xff08;Friend Class&#xff09;是用于控制类的访问权限的机制。这允许特定的函数或类访问另一个类的私有成员和保护成员&#xff0c;打破了 C 的封装性规则。 友元函数 定义 友元提供了不同类的成员函数之间…...

基于Spring Boot+Vue的多媒体素材管理系统的设计与实现

一.系统开发工具与环境搭建 1.系统设计开发工具 后端使用Java编程语言的Spring boot框架 项目架构&#xff1a;B/S架构 运行环境&#xff1a;win10/win11、jdk17 前端&#xff1a; 技术&#xff1a;框架Vue.js&#xff1b;UI库&#xff1a;ElementUI&#xff1b; 开发工具&…...

Inpaint-Web:纯浏览器端实现的开源图像处理工具

之前在刷短视频的时候&#xff0c;经常看到一些情侣在景区拍照&#xff0c;结果被路人“抢镜”。有时男朋友会拿出手机&#xff0c;帮忙把那些路人“P”掉&#xff0c;简直是既贴心又有趣。最近我在逛 GitHub 时&#xff0c;发现了一个可以在浏览器端删除照片中部分内容的纯前端…...

商业物联网详细指南:优势与挑战

物联网是信息技术行业最具前景的领域之一。为什么它如此热门呢&#xff1f;原因在于全球连接性。设备可以像人群一样相互协作。正如我们所知&#xff0c;协作能显著提高生产力。 物联网对普通用户和企业都有益处。许多日常流程可以通过传感器、扫描仪、摄像头和其他设备实现自…...

如何在项目中用elementui实现分页器功能

1.在结构部分复制官网代码&#xff1a; <template> 标签: 这是 Vue 模板的根标签&#xff0c;包含所有的 HTML 元素和 Vue 组件。 <div> 标签: 这是一个普通的 HTML 元素&#xff0c;包裹了 el-pagination 组件。它没有特别的意义&#xff0c;只是为了确保 el-pagi…...

Nginx参数配置-笔记

文章目录 upstream实现后台应用服务负载均衡&高可用proxy_set_header参数 upstream实现后台应用服务负载均衡&高可用 角色IPnginx172.168.110.2后端应用服务1172.168.110.3后端应用服务2172.168.110.4后端应用服务3(备用)172.168.110.5 示例如下&#xff1a; upstre…...

衡量神经网络表征相似度

目录 1.中心核对齐技术(CKA)2.Hilbert-Schmidt independence criterion(HSIC)HSIC的计算步骤:HSIC的性质:应用:矩阵中心化操作对于单个数据集的中心化对于两个数据集的中心化(例如,用于HSIC)Python代码示例1.中心核对齐技术(CKA) CKA通过计算两个表征的Gram矩阵(即…...

Javascript高级:深度解析与多种实现方式数组扁平化

数组扁平化&#xff1a;深度解析与多种实现方式 在JavaScript编程中&#xff0c;数组扁平化是一个常见的操作&#xff0c;指的是将一个多维数组转换成一个一维数组。这个过程中&#xff0c;所有嵌套的数组元素都会被“拉平”到同一个层级。数组扁平化在处理嵌套数据结构时非常…...

SpringBoot Data Redis连接Redis-Cluster集群

使用SpringBoot Data Redis无法连接Redis-Cluster集群 最近在研究系统高并发下的缓存架构&#xff0c;因此自己在自己买的云服务器上搭建好Redis 5.0 版本的集群后&#xff0c;使用springboot的 RedisTemplate连接是发现总是访问不到集群节点。上网百度了发现没有好的解决办法&…...

计算机网络——TCP篇

TCP篇 基本认知 TCP和UDP的区别? TCP 和 UDP 可以使用同一个端口吗&#xff1f; 可以的 传输层中 TCP 和 UDP在内核中是两个完全独立的软件模块。可以根据协议字段来选择不同的模块来处理。 TCP 连接建立 TCP 三次握手过程是怎样的&#xff1f; 一次握手:客户端发送带有 …...

【网络安全面经】技术性问题3

11. 一次完整的 HTTP 请求过程 域名解析&#xff1a;通过 DNS 将域名转换为 IP 地址&#xff0c;如上述 DNS 的工作原理。建立 TCP 连接&#xff1a;客户端向服务器发送 SYN 报文段&#xff0c;经过三次握手建立 TCP 连接。发送 HTTP 请求&#xff1a;客户端向服务器发送 HTTP…...

前后端交互之动态列

一. 情景 在做项目时&#xff0c;有时候后会遇到后端使用了聚合函数&#xff0c;导致生成的对象的属性数量或数量不固定&#xff0c;因此无法建立一个与之对应的对象来向前端传递数据&#xff0c;这时可以采用NameDataListVO向前端传递数据。 Data Builder AllArgsConstructo…...

递归(3)----力扣40组合数2,力扣473火柴拼正方形

给定一个候选人编号的集合 candidates 和一个目标数 target &#xff0c;找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用 一次 。 注意&#xff1a;解集不能包含重复的组合。 示例 1: 输入: candidates [10,1,2,7,6,1…...

十一:HTTP 状态码详解:解读每一个响应背后的意义

HTTP(超文本传输协议)是网络通信的基石之一,主要用于客户端(例如浏览器)和服务器之间的通信。为了让服务器能准确地向客户端反馈请求的处理状态,HTTP设计了一套标准的状态码。每一个状态码代表了特定的含义,指示了请求的状态、潜在的问题或成功的信息。 1. 信息响应 (1…...

《译文》2024年11月数维杯国际大学生数学建模挑战赛题目

# 赛题正式发布 2024年第十届数维杯国际大学生数学建模挑战赛顺利开赛&#xff0c;竞赛开始时间为北京时间2024年11月15日09:00至北京时间2024年11月19日09:00&#xff0c;共计4天&#xff0c;竞赛题目正式发布&#xff0c;快来一起围观&#xff0c;你认为今年的哪个题目更具有…...

shell命令统计文件行数之和

你可以使用以下 shell 命令来统计每个 .txt 文件的行数,并将其加和在一起: find . -name "*.txt" -not -name "*.json" -exec wc -l {} + | awk {sum += $1} END {print sum} 解释: find . -name "*.txt" -not -name "*.json": f…...

第02章 CentOS基本操作

2.文件基本操作【文件操作&#xff08;一&#xff09;】 目标 理解Linux下路径的表示方法能够使用命令(mkdir和touch)在指定位置创建目录和文件能够使用命令(rm)删除指定的目录和文件能够使用命令(ls)列出目录里的文件能够使用命令(cat,head,tail,less,more)查看文件内容理解标…...

241113.学习日志——[CSDIY] [ByteDance] 后端训练营 [02]

CSDIY&#xff1a;这是一个非科班学生的努力之路&#xff0c;从今天开始这个系列会长期更新&#xff0c;&#xff08;最好做到日更&#xff09;&#xff0c;我会慢慢把自己目前对CS的努力逐一上传&#xff0c;帮助那些和我一样有着梦想的玩家取得胜利&#xff01;&#xff01;&…...

LoRA训练助手效果展示:动漫风格迁移作品集

LoRA训练助手效果展示&#xff1a;动漫风格迁移作品集 1. 引言 你是否曾经想过&#xff0c;把自己拍摄的普通照片转换成新海诚风格的唯美画面&#xff0c;或者让日常场景拥有吉卜力工作室的梦幻质感&#xff1f;现在&#xff0c;这一切都不再是梦想。通过LoRA训练助手&#x…...

手机号逆向查询QQ号:3步快速找回QQ号的终极免费方案

手机号逆向查询QQ号&#xff1a;3步快速找回QQ号的终极免费方案 【免费下载链接】phone2qq 项目地址: https://gitcode.com/gh_mirrors/ph/phone2qq 你是否曾因忘记QQ号而无法登录重要账号&#xff1f;手机号逆向查询QQ号工具为你提供了一种简单高效的解决方案。这个基…...

攻克Godot资源提取难题:godot-unpacker工具的创新解法

攻克Godot资源提取难题&#xff1a;godot-unpacker工具的创新解法 【免费下载链接】godot-unpacker godot .pck unpacker 项目地址: https://gitcode.com/gh_mirrors/go/godot-unpacker 问题&#xff1a;为什么普通解压工具无法胜任PCK文件提取&#xff1f; Godot引擎打…...

从Gridworld到吃豆人:用Python拆解强化学习三大核心算法(值迭代、策略调参、Q学习)

从Gridworld到吃豆人&#xff1a;Python实战强化学习三大核心算法 1. 强化学习基础与马尔可夫决策过程 想象一下&#xff0c;你正在训练一只小狗完成障碍赛跑。每次它正确跳过障碍&#xff0c;你会给予零食奖励&#xff1b;如果撞到障碍&#xff0c;则没有任何奖励。经过多次尝…...

SDMatte模型API接口安全设计:防止恶意调用与资源滥用

SDMatte模型API接口安全设计&#xff1a;防止恶意调用与资源滥用 1. 引言&#xff1a;API安全的重要性 在将SDMatte模型部署为公开API服务时&#xff0c;安全防护是首要考虑的问题。我们曾遇到一个真实案例&#xff1a;某图像处理API上线一周内&#xff0c;由于缺乏防护措施&…...

不止于画图:用IPC-7351标准和Mentor LP工具高效生成标准PCB焊盘(Cadence实战)

从标准到实践&#xff1a;基于IPC-7351的PCB焊盘设计全流程解析 在高速数字电路和精密模拟电路设计中&#xff0c;焊盘作为元器件与PCB之间的物理连接点&#xff0c;其设计质量直接影响产品可靠性。一个常见的误区是仅关注软件操作技巧&#xff0c;而忽视行业标准对设计质量的…...

影刀经验库共建:5个岗位提效的RPA模板分享

影刀RPA岗位提效模板分享影刀RPA&#xff08;机器人流程自动化&#xff09;能够显著提升企业运营效率&#xff0c;尤其在重复性高、规则明确的任务中表现突出。以下是5个适用于不同岗位的RPA模板&#xff0c;帮助团队快速实现自动化提效。财务岗位&#xff1a;自动化发票处理通…...

从51到STM32:手把手教你用STM32CubeMX和PWM驱动智能小车电机(附代码避坑)

从51到STM32&#xff1a;智能小车电机控制的进阶实战指南 十年前用51单片机做智能小车时&#xff0c;PWM配置需要手动计算定时器重装载值&#xff0c;而今天在STM32CubeMX里勾选几下就能生成精准的PWM信号——这就像从手动挡升级到了自动驾驶。作为过来人&#xff0c;我完整记…...

NEURAL MASK 模型调试技巧:使用IDE进行Python代码跟踪与问题定位

NEURAL MASK 模型调试技巧&#xff1a;使用IDE进行Python代码跟踪与问题定位 调试代码&#xff0c;尤其是涉及复杂模型加载和推理的代码&#xff0c;有时候就像在黑暗的房间里找一颗掉落的螺丝钉。你大概知道它就在那儿&#xff0c;但就是看不见摸不着。对于NEURAL MASK这类模…...

Artichoke 快速入门:5分钟学会安装和使用这个革命性 Ruby 实现

Artichoke 快速入门&#xff1a;5分钟学会安装和使用这个革命性 Ruby 实现 【免费下载链接】artichoke &#x1f48e; Artichoke is a Ruby made with Rust 项目地址: https://gitcode.com/gh_mirrors/ar/artichoke Artichoke 是一个用 Rust 和 Ruby 编写的革命性 Ruby …...