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

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.mrgr.cn/news/41922.html

相关文章:

  • 武汉自闭症儿童寄宿学校:让孩子快乐成长
  • 易贝恩副总经理朱洪泽受邀为第四届中国项目经理大会演讲嘉宾
  • VirtulBOX Ubuntu22安装dpdk23.11
  • Ericsson EPSFB 通话掉话现象优化案例
  • 探索 aMQTT:Python中的AI驱动MQTT库
  • MySQL 实验 2:数据库的创建与管理
  • C++模版进阶
  • 统计学习理论之VC维究竟是什么
  • Go语言实现长连接并发框架 - 任务执行流上下文
  • Valhalla实现 -Docker部署利用OSM(Mapbox)地图实现路径规划可视化
  • 重生到现代之从零开始的C语言生活》—— 内存的存储
  • 深入理解 Solidity 中的支付与转账:安全高效的资金管理攻略
  • 吉他弹唱打谱软件哪个好用 吉他弹唱制谱教程
  • 抗生素治疗百病吗?
  • 工具的力量——提升工作效率的编程工具选择与运用
  • JavaScript(JS)学习笔记 6 常用的JS内置对象(FileReader对象 FormData对象 Promise对象)
  • Comparable接口和Comparator接口
  • SpringCloud微服务搭建实战
  • 华为云+WordPress+Puock主题搭建个人博客
  • 【Bug】STM32F1的PB3和PB4无法正常输出