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

[GIT]版本控制工具

[GIT]版本控制工具

  • Git 的命令
  • Git 的配置信息
    • 查看现有 Git 配置信息
    • 设置 Git 配置信息
      • 用户信息配置
      • 文本编辑器配置
      • 差异分析工具配置
    • 编辑 Git 配置文件
  • Git 仓库操作
    • 初始化 Git 仓库
    • 克隆 Git 仓库
    • Git 分支仓库创建
    • Git 远程仓库命令
  • Git 提交历史
  • Git 标签
    • 添加标签
    • 查看已有标签
    • 删除标签
    • 查看标签版本的修改内容
  • 其它操作

Git 是分布式的版本控制工具

Git 的命令

可以直接在终端输入 git+回车,此时会出现提示信息

此时查看提示信息,列出了常用的 git 的可执行命令以及简介

usage: git [--version] [--help] [-C <path>] [-c <name>=<value>][--exec-path[=<path>]] [--html-path] [--man-path] [--info-path][-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare][--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]<command> [<args>]These are common Git commands used in various situations:start a working area (see also: git help tutorial)clone             Clone a repository into a new directoryinit              Create an empty Git repository or reinitialize an existing onework on the current change (see also: git help everyday)add               Add file contents to the indexmv                Move or rename a file, a directory, or a symlinkrestore           Restore working tree filesrm                Remove files from the working tree and from the indexsparse-checkout   Initialize and modify the sparse-checkoutexamine the history and state (see also: git help revisions)bisect            Use binary search to find the commit that introduced a bugdiff              Show changes between commits, commit and working tree, etcgrep              Print lines matching a patternlog               Show commit logsshow              Show various types of objectsstatus            Show the working tree statusgrow, mark and tweak your common historybranch            List, create, or delete branchescommit            Record changes to the repositorymerge             Join two or more development histories togetherrebase            Reapply commits on top of another base tipreset             Reset current HEAD to the specified stateswitch            Switch branchestag               Create, list, delete or verify a tag object signed with GPGcollaborate (see also: git help workflows)fetch             Download objects and refs from another repositorypull              Fetch from and integrate with another repository or a local branchpush              Update remote refs along with associated objects'git help -a' and 'git help -g' list available subcommands and some
concept guides. See 'git help <command>' or 'git help <concept>'
to read about a specific subcommand or concept.
See 'git help git' for an overview of the system.

Git 的配置信息

查看现有 Git 配置信息

git config --list

输出

diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
http.sslbackend=openssl
http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
core.autocrlf=true
core.fscache=true
core.symlinks=false
pull.rebase=false
credential.helper=manager-core
credential.https://dev.azure.com.usehttppath=true
user.name=xxxx
user.email=****@xx.xx****
credential.helper=store
http.sslverify=false

设置 Git 配置信息

用户信息配置

  • user.name:提交的用户名称
  • user.email:提交的用户邮件
  • global: global 设置全局配置,否则设定的为当前项目的配置
git config [--global] user.name xxxx
git config [--global] user.email xxxx

文本编辑器配置

一般 Git 使用的文本编辑器是 Vi 或者 Vim,也可设置为 Emacs

git config [--global] core.editor emacs

差异分析工具配置

解决合并冲突时使用的差异分析工具,git 的差异分析工具选项包括:
kdiff3,tkdiff,meld,xxdiff,emerge,vimdiff,gvimdiff,ecmerge,和 opendiff 等合并工具的输出信息

git config [--global] merge.tool vimdiff

编辑 Git 配置文件

git config -e [--global]

输出:

[core]repositoryformatversion = 0filemode = falsebare = falselogallrefupdates = truesymlinks = falseignorecase = true
[remote "origin"]url = https://github.com/******/xxxx.gitfetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]remote = originmerge = refs/heads/master

Git 仓库操作

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tQwoB3Mr-1682055699588)(2023-04-21-13-33-00.png)]

  • workspace : 工作区
  • staging area : 暂存区/缓存区
  • local repository : 版本库或本地仓库
  • remote repository : 远程仓库

初始化 Git 仓库

git init [path]// 初始化 [指定路径] git 仓库
git add *.c //新增.c结尾的文件为版本控制范围
git add README //新增README文件为版本控制范围
git commit -m '提交说明'

克隆 Git 仓库

git clone <repo> [<directory>]
  • repo: git 仓库
  • directory: 本地目录

Git 分支仓库创建

命令说明
git branch列出所有分支
git branch (branchname)创建分支命令
git checkout (branchname)切换分支命令
git merge [alias]/[branch]合并分支命令
git branch -d (branchname)删除分支命令

当你切换分支的时候,Git 会用该分支的最后提交的快照替换你的工作目录的内容, 所以多个分支不需要多个目录

Git 远程仓库命令

命令说明
git remote查看用户远程库
git remote add [shortname] [url]添加远程仓库
git remote rm [别名]删除远程仓库
git fetch从远程库获取代码
git pull下载远程库代码并合并
git push [alias]/[branch]推送分支数据到远程仓库

Git 提交历史

命令说明
git log查看历史提交记录
git blame [file]以列表形式查看指定文件的历史修改记录

git log [attr]:

  • –oneline : 提交记录简洁版本
  • –graph : 提交历史拓扑
  • –reverse : 逆向显示提交历史
  • –author : 查找指定用户的提交日志
  • –since : 查找指定日期的提交日志
  • –before : 查找指定日期前的提交日志
  • –until : 查找到指定日期的提交日志
  • –after : 查找指定日期后的提交日志
  • –no-merges : 隐藏合并提交
  • –decorate : 查看日志标签
git log --before={3.weeks.ago}
git log --after={2010-04-18}

Git 标签

添加标签

希望记住特别的提交快照,可以使用 git tag 打上标签

git tag -a <tagname> [-m "runoob.com标签"] [commitId]
  • [-a] 创建一个带注解的标签,记录添加标签的原因,GIT 打开编辑器写注释
  • [commitId] 之前忘记添加标签时,可以通过 commitId 指定之前提交的版本添加注释

查看已有标签

git tag

删除标签

git tag -d [tagname]

查看标签版本的修改内容

git show [tagname]

其它操作

命令说明
git add .添加文件到暂存区
git commit将暂存区内容添加到版本库或本地仓库中
git status查看仓库当前状态
git diff比较文件的不同,即暂存区和工作区的差异。
git reset回退版本
git rm将文件从暂存区和工作区中删除
git mv移动或重命名工作区文件

相关文章:

[GIT]版本控制工具

[GIT]版本控制工具 Git 的命令Git 的配置信息查看现有 Git 配置信息设置 Git 配置信息用户信息配置文本编辑器配置差异分析工具配置 编辑 Git 配置文件 Git 仓库操作初始化 Git 仓库克隆 Git 仓库Git 分支仓库创建Git 远程仓库命令 Git 提交历史Git 标签添加标签查看已有标签删…...

Linux文件管理命令

Linux命令行 命令空格参数(可写可不写)空格文件(可写可不写)ls/opt 根目录下的opt文件夹ls-a 显示所有文件及隐藏文件/optls -l 详细输出文件夹内容 ls -h 输出文件大小(MB...)ls--full-time 完整时间格式输出ls-d 显示文件夹本身信息&#xff0c;不输出内容ls-t 根据最后修改…...

Netty面试题(三)

文章目录 前言一、如何选择序列化协议&#xff1f;二、Netty 的零拷贝实现&#xff1f;总结 前言 如何选择序列化协议&#xff1f;Netty 的零拷贝实现&#xff1f; 一、如何选择序列化协议&#xff1f; 具体场景 对于公司间的系统调用&#xff0c;如果性能要求在 100ms 以上的…...

risc-v dv源代码分析

地址为 GitHub - chipsalliance/riscv-dv: Random instruction generator for RISC-V processor verificationRandom instruction generator for RISC-V processor verification - GitHub - chipsalliance/riscv-dv: Random instruction generator for RISC-V processor verif…...

C语言基础语法复习07-c语言关键字的解释

对前一篇文章写点随笔&#xff1a;https://blog.csdn.net/weixin_43172531/article/details/132893176 基本数据类型(8种)和类型修饰符(4种)&#xff1a; void与指针*组合在一起才有具体实体意义。 void本身代表没有类型、没有实体&#xff0c;例如void main(void)。 char c…...

阿里巴巴全店商品采集教程,阿里巴巴店铺所有商品接口(详解阿里巴巴店铺所有商品数据采集步骤方法和代码示例)

随着电商行业的快速发展&#xff0c;阿里巴巴已成为国内的电商平台之一&#xff0c;拥有着海量的商品资源。对于一些需要大量商品数据的商家或者需求方来说&#xff0c;阿里巴巴全店采集是非常必要的。本文将详细介绍阿里巴巴全店采集的步骤和技巧&#xff0c;帮助大家更好地完…...

Android 白天黑夜模式设置

白天黑夜模式是一种动态的UI模式,根据当前时间或用户设置的偏好,在白天和黑夜之间进行切换。它通过调整应用程序的颜色、亮度和其他可视化元素来提供更加舒适和易读的用户界面。 一、简单设置 UiModeManager 是用于管理和控制用户界面模式(UI Mode)。它提供了一组方法,允…...

FFMpeg zoompan 镜头聚焦和移动走位

案例 原始图片 # 输出帧数&#xff0c;默认25帧/秒&#xff0c;25*4 代表4秒 # s1280x80 # 输出视频比例&#xff0c;可以设置和输入图片大小一致 # zoom0.002 表示每帧放大的倍数&#xff0c;下面代码是25帧/每秒 * 4秒&#xff0c;共1000帧 # 最终是 0.002*25*4 0.2&…...

利用hutool工具类实现验证码功能

hutool工具类实现验证码 一.生成验证码二.校验验证码三.使用案例1.引入hutool工具类2.VerifyCodeResp接口响应体3.VerifyCodeController验证码工具类4.测试验证5.项目结构及源码下载 利用hutool工具类&#xff0c;可以很方便生成不同类型的验证码。这里简单记录下使用过程。 一…...

前端面试题: 请解释什么是函数的作用域?

今天做到了一道题&#xff1a;请解释什么是函数的作用域&#xff1f; 我给的答案是&#xff1a; 函数的作用域是指函数执行到内部后创建的数据空间&#xff0c;在函数的作用域内&#xff0c;let定义的变量的有效期为函数作用域 AI觉得我答得比较简单&#xff1a;回答基本正确&…...

华为云云服务器云耀L实例评测 | 华为云云服务器实例新品全面解析

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…...

Nginx配置SSL证书

1 Ubuntu 20.04 上安装 Nginx Nginx 发音 “engine x” ,是一个开源软件&#xff0c;高性能 HTTP 和反向代理服务器&#xff0c;用来在互联网上处理一些大型网站。它可以被用作独立网站服务器&#xff0c;负载均衡&#xff0c;内容缓存和针对 HTTP 和非 HTTP 的反向代理服务器。…...

一,安卓aosp源码编译环境搭建

系列文章目录 第一章 安卓aosp源码编译环境搭建 第二章 手机硬件参数介绍和校验算法 第三章 修改安卓aosp代码更改硬件参数 第四章 编译定制rom并刷机实现硬改(一) 第五章 编译定制rom并刷机实现硬改(二) 第六章 不root不magisk不xposed lsposed frida原生修改定位 第七章 安卓…...

video 视频编解码一些debug方法

文章目录 一、通过命令去获取一些数据1.2 确定我们xml配置文件: 二、查看我们芯片支持的编码能力三、通过log去获取信息 这个文章的主要内容是为了后期性能方面的debug, 设计到前期的bringup则没有 一、通过命令去获取一些数据 获取媒体相关的参数&#xff1a; # getprop |…...

中秋国庆假期——模板推荐

要说最近能让人开心的事情是什么?大概就是下周将迎来8天假&#xff0c;小编帮大家数了数还有11天&#xff0c;就要放中秋国庆的假期了。作为一个资深打工人&#xff0c;本周的日常即将变成&#xff1a;上班想放假、下班想放假、想放假… 但是宝子们要注意&#xff0c;大家在盼…...

【配代码演示】Cookie和Session的区别

一、共同之处&#xff1a; cookie和session都是用来跟踪浏览器用户身份的会话方式。 二、工作原理&#xff1a; 1.Cookie的工作原理 &#xff08;1&#xff09;浏览器端第一次发送请求到服务器端 &#xff08;2&#xff09;服务器端创建Cookie&#xff0c;该Cookie中包含用户的…...

【Linux初阶】信号入门2 | 信号阻塞、捕捉、保存

文章目录 ☀️前言☀️一、信号阻塞&#x1f33b;1.信号其他相关常见概念&#x1f33b;2.信号在内核中的表示 ☀️二、信号捕捉&#xff08;重点&#xff09;&#x1f33b;1.用户态 & 内核态&#x1f33b;2.如何判断进程处于用户态或内核态&#x1f33b;3.OS接口的访问方法…...

【已解决】:该该虚拟机似乎正在使用中。如果该虚拟机未在使用,请按“获取所有权(T)“按钮获取它的所有权。否则,请按“取消(C)“按钮以防损坏。

现象 启动VMware虚拟机&#xff0c;无法正常打开并出现以下信息&#xff1a; 原因 这是因为当运行一个“虚拟系统”时&#xff0c;为防止该系统被另外一个VMware程序打开&#xff0c;导致数据被修改或损坏&#xff0c;VMware会自动在该“虚拟系统”所在的文件夹下&#xff0c…...

系统架构常用的工具

HBase HBase是一个分布式的、面向列的开源数据库&#xff0c;该技术来源于 Fay Chang 所撰写的Google论文“Bigtable&#xff1a;一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统&#xff08;File System&#xff09;所提供的分布式数据存储一样&#xff…...

腾讯云2核4G服务器5M带宽 218元一年 优惠价格明细表

腾讯云2核4G服务器5M带宽可以选择轻量应用服务器或云服务器ECS&#xff0c;轻量2核4G5M带宽服务器218元一年&#xff1a; 腾讯云2核4G服务器5M带宽收费 腾讯云2核4G服务器可以选择轻量应用服务器或者ECS云服务器&#xff0c;云服务器ECS是专业级云服务器&#xff0c;大多数使用…...

[C++ 网络协议] 多播与广播

目录 1. 多播 1.1 多播的使用情形 1.2 多播的原理 1.3 如何实现多播 1.4 多播的代码实现 2. 广播 2.1 广播与多播的区别 2.2 广播的分类 2.3 实现广播 1. 多播 1.1 多播的使用情形 考虑一种情形&#xff0c;你要向10000名用户发送数据&#xff0c;此时如果用TCP提供服…...

IOS17正式版今日发布

北京时间9月19日凌晨&#xff0c;苹果公司正式向全球用户推送了期待已久的iOS 17正式版。此次更新为iPhone带来了多项激动人心的功能&#xff0c;包括对“电话”、“信息”、FaceTime通话的重大更新&#xff0c;“待机显示”以及音乐、小组件、Safari浏览器的升级等。 据了解&…...

2560. 打家劫舍 IV

沿街有一排连续的房屋。每间房屋内都藏有一定的现金。现在有一位小偷计划从这些房屋中窃取现金。 由于相邻的房屋装有相互连通的防盗系统&#xff0c;所以小偷 不会窃取相邻的房屋 。 小偷的 窃取能力 定义为他在窃取过程中能从单间房屋中窃取的 最大金额 。 给你一个整数数…...

java web中部署log4j.xml

标题&#xff1a;Java Web中部署log4j.xml 目录&#xff1a; 1. 介绍 2. 配置log4j.xml文件 3. 配置web.xml文件 4. 配置Spring框架 5. 配置Spring Bean 6. 总结 ## 1. 介绍 在Java Web开发中&#xff0c;日志记录是非常重要的一部分。log4j是一个常用的Java日志记录框架&am…...

【张兔兔送书第一期:考研必备书单】

考研书单必备 《数据结构与算法分析》《计算机网络&#xff1a;自顶向下方法》《现代操作系统》《深入理解计算机系统》《概率论基础教程&#xff08;原书第10版》《线性代数&#xff08;原书第10版&#xff09;》《线性代数及其应用》赠书活动 八九月的朋友圈刮起了一股晒通知…...

基于Spring Boot+ Vue的健身房管理系统与实现

小熊学Java全能学面试指南&#xff1a;https://javaxiaobear.cn 摘要 随着健身行业的快速发展&#xff0c;健身房管理系统成为了提高管理效率和用户体验的重要工具。本论文旨在设计与实现一种基于前后端分离的健身房管理系统&#xff0c;通过前后端分离的架构模式&#xff0c;…...

ThreadLocal线程局部变量

1.原理 ThreadLocal是用来保存当前线程数据的&#xff0c;每一个线程的内部都有一个ThreadLocalMap&#xff0c;当前这个map中存储了以当前ThreadLocal作键&#xff0c;具体的数据作值的一个个Entry对象。 为什么非得以ThreadLocal对象作键呢&#xff1f;因为一个线程可能使用了…...

C++ Primer (第五版)第一章习题部分答案

在我自学C过程中&#xff0c;我选择了CPrimer这本书&#xff0c;并对部分代码习题进行了求解以及运行结果。接下来几个月我将为大家定时按章节更新习题答案与运行结果: 目录 1.9编写程序,使用while循环将50到100的整数相加 1.10 除了运算符将运算对象的值增加1之外,还有一个…...

Python与GUI集成:零基础也能开发国际象棋游戏

引言&#xff1a; 国际象棋&#xff0c;作为世界上最受欢迎的棋类游戏之一&#xff0c;拥有丰富的策略和深度。但是&#xff0c;你知道自己可以使用Python来创建一个简单的国际象棋游戏并为其添加图形用户界面&#xff08;GUI&#xff09;吗&#xff1f;在本教程中&#xff0c…...

SaaS软件能保证数据安全吗?

SaaS软件能保证数据安全吗&#xff1f; 本文将要尝试从各个方面尽可能客观的去阐述这个问题&#xff0c;而不是简单自嗨式的说简道云平台如何保障数据安全。 建议先收藏起来慢慢品&#xff01; 01 SaaS安全到底是什么&#xff1f;——定义解读 本文所用SaaS平台>>>…...

山西网站建设费用/网站内容如何优化

crontab 是用来让使用者在固定时间或固定间隔执行程序之用&#xff0c;换句话说&#xff0c;也就是类似使用者的时程表。 -u user 是指设定指定 user 的时程表&#xff0c;这个前提是你必须要有其权限(比如说是 root)才能够指定他人的时程表。 如果不使用 -u user 的话&#xf…...

教学设计模板/佛山seo关键词排名

0x00 抓包分析简单的搜索之后发现&#xff0c;很多参数都是登陆上面这个请求返回的值&#xff0c;这个请求在输入完账号光标到达密码框时就会生成!0x01 加密逻辑分析搜索su可以很快找到加密的位置&#xff0c;上图看到e.su和e.sp都是由sinaSSOEncoder这个函数生成的&#xff0c…...

网站统计代码添加/专业seo培训学校

[oracle] to_date() 与 to_char() 日期和字符串转换 to_date("要转换的字符串","转换的格式") 两个参数的格式必须匹配&#xff0c;否则会报错。 即按照第二个参数的格式解释第一个参数。 to_char(日期,"转换格式" ) 即把给定的日期按照“转换…...

泊头市做网站/如何推广自己产品

第1关:求图中边或弧的数目 任务描述 本关任务:求给定图中的边(或弧)的数目。 相关知识 实验目的 掌握图的基本概念; 掌握图的存储结构的设计与实现,基本运算的实现; 熟练掌握图的两种遍历算法、遍历生成树及遍历算法的应用。 实验任务 说明:为使实验程序简洁直观,下…...

随州便宜做网站/谷歌关键词优化怎么做

...

贵州住房和城乡建设厅官方网站/国内搜索引擎排名2022

////TITLE:// WinXP环境中模仿WinCE的ASSERT表现行为的解决方案//AUTHOR:// norains//DATE:// Tuesday 23- February-2010//Environment:// WINDOWS CE 5.0// WINDOWS XP// 如果你开发过WinCE的程序&#xff0c;那么想必你对ASSERT宏的用法不陌生。简单点来说…...