Git版本控制工具--关于命令

Git版本控制工具

学习前言

在项目开发中,总是需要多个人同时对一个项目进行修改,如何高效快速地进行修改,且控制各自修改的版本不会和他人的进行重叠,这就需要用到Git分布式版本控制器了

作用

解决了一致性,并发性,安全性,实现了如

  • 代码还原
  • 并行开发
  • 统计工作量
  • 版本控制

这些功能,目前为主流版本控制器,除此之外,还有SVN,CVS,VSS,TF等工具来实现版本的控制

分布式版本控制的好处

每个人都可以从同一个远程仓库中将所需修改的文件,push到自己的本地仓库中,再调到工作区进行修改,而且本地仓库中也有一个完整的项目程序,避免了如果服务器崩溃或者远程仓库出故障而导致项目代码全部丢失,也可以高效地进行版本控制。

缺点

会增加本地存储的占用

Git的历史

Linux内核开源项目有许多参与者,但维护Linux需要进行大量的补丁以及保存归档的操作,因此项目组启用了一个其他公司所设计的分布式版本控制系统BitKeeper,但后来该公司收回了Linux内核开源项目免费使用该系统的权力,导致linux项目组需要另找一个分布式版本控制系统

因此,Linux的缔造者,Linus Torvalds花费了几周时间,做出了属于自己的版本系统,也就是Git

Git安装

Git Bash 推荐

Git CMD Windows风格的命令行

Git GUI图形界面,不建议初学者使用,而且该GUI也并不好用,不美观

Git如何使用

Git的粗略工作流程

图解:

在这里插入图片描述

linux常见命令

命令作用
ls/ll查看当前目录
cat查看文件内容
touch创建文件
tail n 1以顺序或者倒序的方式查看文件中的某一行内容
yy复制当行
dd剪切当行
p粘贴
vim编辑文件(若没有该文件则创建)进入后默认为命令模式
i进入输入模式
命令作用
Esc退出输入模式
:wq在命令模式下保存修改并退出文件

Git-命令

  • git config --global user.name/email 用户名/邮箱 ==> 设置用户签名

    在刚开始安装git时需要进行设置,以后通过同样的命令可以进行修改

  • git init ==> 初始化本地仓库

  • git status ==> 查看本地仓库状态

  • git add 文件 ==> 添加到暂存区

  • git rm-cached 文件 ==> 将某文件从暂存区中删除

    只是删除了在暂存区中的数据,工作区中的文件没有被删除

  • git commit -m “日志信息” 文件 ==> 将暂存区文件提交到本地仓库

  • git reflog ==> 刷新并查看日志信息

  • git log ==> 查看详细的日志信息


[!IMPORTANT]

在进行Git命令操作中,我创建了两个.txt文件

初始化本地库

获得目录的管理权限,后续可以进行Git命令操作

查看本地库状态

在这里插入图片描述

第一行:目前处于哪个分支

第二行:是否提交过文件到本地仓库中

第三行:是否有东西可以提交(包含被追踪或未被追踪的文件)

----被追踪标识文件被放到了暂存区

在这里插入图片描述

添加文件到暂存区中

在这里插入图片描述

警告内容为当文件被再次创建及修改时,换行命令LF会改为CRLF

由于是在Windows环境中使用git,因此换行命令会改为windows中用的命令

在这里插入图片描述

将暂存区文件提交到本地仓库中

在这里插入图片描述

在这里插入图片描述

hello.txt被push到本地仓库后,没有被修改的工作区的源文件显示无需提交到本地仓库中,因为已经有了一个保存的版本在本地仓库中了

在这里插入图片描述

git log显示了详细的关于本地仓库文件的日志信息,包括上传时的msg,设置的用户签名以及上传的时间

在这里插入图片描述

区别

上下两个黄色字样的字体分别为完整的版本号精简的版本号

在这里插入图片描述

当有提交到了本地仓库的文件,且后续被修改了,若没有存到暂存区中,则会出现红色字样的modiffied: hello.txt

在这里插入图片描述

存到暂存区后,则会显示出绿色字样

在这里插入图片描述

当再次上传到本地仓库,就会把之前同名的文件给更改,并替换对应的日志信息

[!IMPORTANT]

HEAD -> master指针永远指向最新的版本文件

版本穿梭

git reset --hard 版本号 --可以先通过git reflog查看想要回复到的版本的版本号

在这里插入图片描述

【HEAD->master会指向新的版本】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/438053.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CSS 圆形边框与阴影

目录 1. 圆角边框 1.1 正圆 1.2 圆角矩形 1.3 任意圆角 1.4 某个圆角 2. 盒子阴影 3. 文字阴影 1. 圆角边框 1.1 正圆 1.2 圆角矩形 1.3 任意圆角 1.4 某个圆角 2. 盒子阴影 3. 文字阴影

Megabit兆比特10月比特币激增做好准备-最新加密货币新闻

Kaiko Research最近的分析表明,交易员正在积极为潜在的强劲表现做好准备特币(BTC)比今年十月。目前,BTC的交易价格为60800美元,在测试了60000美元的支撑位后,最近上涨了800美元。Megabit兆比特自成立以来,Megabit凭借用户友好的界…

【Spring】运行Spring Boot项目,请求响应流程分析以及404和500报错

1. 运行项目 import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Appl…

【设计模式-职责链】

定义 职责链模式是一种行为设计模式,**它通过将请求发送给链上的多个处理者来避免请求发送者与处理者之间的紧密耦合。每个处理者可以选择处理请求或将其传递给链中的下一个处理者。**这样,可以将处理请求的责任链式组织,从而实现更灵活的请…

【HDP】zookeeper未授权漏洞修复

目录 一、禁用四字命令 二、ZK-Client增加kerberos 一、禁用四字命令 Zookeeper四字命令的使用方式非常简单,通常有两种方式。第一种是通过Telnet方式,使用Telnet客户端登录ZooKeeper的对外服务端口,然后直接使用四字命令即可;第…

django的URL配置

1 django如何处理一个请求 首先Django要使用根URLconf模块,通过setting.py配置文件的ROOT_URLCONF来设置。 加载该模块后并查找变量 urlpatterns。这是一个Python的django.conf.urls.url()实例列表。 Django按顺序运行每个URL模式,并在匹配所请求的…

.NET Core 高性能并发编程

一、高性能大并发架构设计 .NET Core 是一个高性能、可扩展的开发框架,可以用于构建各种类型的应用程序,包括高性能大并发应用程序。为了设计和开发高性能大并发 .NET Core 应用程序,需要考虑以下几个方面: 1. 异步编程 异步编程…

Windows平台如何实现RTSP|RTMP流录像?

好多开发者使用场景,除了实现基础的低延迟RTSP、RTMP播放外,还需要实现RTSP、RTMP流数据的本地录像功能。本文以大牛直播SDK的Windows平台播放模块为例,介绍下如何实现RTSP、RTMP流录像。 功能设计 [拉流]支持拉取RTSP流录像; [拉…

15分钟学 Python 第34天 :小项目-个人博客网站

Day 34: 小项目-个人博客网站 1. 引言 随着互联网的普及,个人博客已成为分享知识、体验和见解的一个重要平台。在这一节中,我们将使用Python的Flask框架构建一个简单的个人博客网站。我们将通过实际的项目来学习如何搭建Web应用、处理用户输入以及管理…

二叉树深度学习——将二叉搜索树转化为排序的双向链表

1.题目解析 题目来源:LCR 155.将二叉搜索树转化为排序的双向链表 测试用例 2.算法原理 首先题目要求原地进行修改并且要求左指针代表前驱指针,右指针代表后继指针,所以思路就是 1.使用前序遍历创建两个指针cur、prev代表当前节点与前一个节点…

游览器输入URL并Enter时都发生了什么 面试完美回答

文章目录 前言URL解析DNS解析**浏览器缓存****操作系统缓存**:**路由器缓存**:ISP(Internet service provider)缓存DNS递归解析IP地址的获取缓存结果 建立TCP连接发送HTTP请求服务器响应TCP链接断开渲染页面解析一 HTML解析过程解…

U盘目录损坏数据恢复全攻略

一、U盘目录损坏现象描述 U盘作为我们日常生活中常用的存储设备,因其小巧便携、存储容量大等特点而备受青睐。然而,在使用U盘的过程中,有时会遇到目录损坏的问题。目录损坏通常表现为U盘中的文件夹无法正常打开,或者文件无法读取…

云栖实录 | 开源大数据全面升级:Native 核心引擎、Serverless 化、湖仓架构引领云上大数据发展

本文根据2024云栖大会实录整理而成,演讲信息如下: 演讲人: 王 峰 | 阿里云智能集团研究员、开源大数据平台负责人 李 钰|阿里云智能集团资深技术专家 范 振|阿里云智能集团高级技术专家 李劲松|阿里云…

docker部署minio文件服务器

1. 拉取镜像 docker search minio docker pull minio/minio2. 创建映射 mkdir -p /root/docker_app/minio_data mkdir -p /root/docker_app/minio_config3. 执行docker run 自定义用户和秘钥安装: admin/admin123456 docker run -p 9000:9000 -p 9001:9001 -d --name mini…

【有啥问啥】大型语言模型的涌现能力(Emergent Abilities):新一代AI的曙光

大型语言模型的涌现能力(Emergent Abilities):新一代AI的曙光 随着人工智能技术的飞速发展,大型语言模型(Large Language Model,LLM)展现出了令人惊叹的涌现能力。这种能力并非模型规模简单线性…

Unity3D播放GIF图片使用Animation来制作动画

系列文章目录 unity工具 文章目录 系列文章目录👉前言👉一、下载GIF动图,用PS制作导出帧动画图片👉二、使用Animation制作动画👉三、脚本控制动画播放👉壁纸分享👉总结👉前言 unity播放gif图片,本身是不支持的,但是可以使用其他方法来实现, 1.有一种使用System…

tortorise数据库迁移变化aerich

数据库迁移 使用场景,当需要修改定义的数据库中表的数据时,就可以利用aerich进行迁移改动 例如 class Asset(models.Model):aid fields.CharField(max_length50, pkTrue)asset_name fields.CharField(max_length150)target_name fields.CharField(…

AI 搜索引擎工具集合

🐣个人主页 可惜已不在 🐤这篇在这个专栏AI_可惜已不在的博客-CSDN博客 🐥有用的话就留下一个三连吧😼 目录 前言 AI 搜索引擎 前言 在信息爆炸的时代,A 搜索引擎应运而生。它以强大的人工智能技术为支撑&#xff0…

day2网络编程项目的框架

基于终端的 UDP云聊天系统 开发环境 Linux 系统GCCUDPmakefilesqlite3 功能描述 通过 UDP 网络使服务器与客户端进行通信吗,从而实现云聊天。 Sqlite数据库 用户在加入聊天室前,需要先进行用户登录或注册操作,并将注册的用户信息&#xf…

windows配置C++编译环境和VScode C++配置(保姆级教程)

1.安装MinGW-w64 MinGW-w64是一个开源的编译器套件,适用于Windows平台,支持32位和64位应用程序的开发。它包含了GCC编译器、GDB调试器以及其他必要的工具,是C开发者在Windows环境下进行开发的重要工具。 我找到了一个下载比较快的链接&#…