Git版本控制管理

news2024/11/26 15:37:12

Git

  • 日志记录
    • 查看日志
    • 获取执行过的命令
    • 查看每一次提交记录
  • 比较文件差异
  • 还原文件
  • git远程仓库
    • 克隆远程仓库
    • 移除无效的远程仓库
    • Git远程仓库推送、抓送,和拉取
    • Git远程仓库多人协作冲突问题
    • Git远程仓库SSH协议推送
  • Git分支
    • 查看分支
    • 创建分支
    • 修改分支
    • 切换分支
    • 推送至远程仓库分支
    • 合并分支
    • 删除分支
  • Git标签
    • 标签的基本操作
  • Git工作流

日志记录

查看日志

 git log

参数:

  • graph : 查看分支合并图
  • oneline : 标记把每一个提交压缩到了一行中

获取执行过的命令

git reflog

查看每一次提交记录

git log --oneline

比较文件差异

比较工作文件区和暂存区的文件差异

 git diff

比较暂存区文件和版本库文件的差异

git diff --cached

注意:

 --- :标记原始文件
 +++ :标记新文件
 @@ :两个不同文件版本的上下文行号。
  -: 原始文件删除改行
  + :原始文件增加一行

还原文件

对于恢复修改的文件,就是将文件从仓库中拉到本地工作区,即仓库区 ----> 暂存区 ----> 工作区。
在这里插入图片描述
在这里插入图片描述

git远程仓库

在这里插入图片描述

添加远程仓库

git remote add <shortname><url>
  • shortname :远程的名字(可以随意取名)
  • url : 远程仓库地址

查看远程仓库

 git remote

克隆远程仓库

如果你想获得一份已经存在了的Git仓库的拷贝,这时就要用到git clone命令。Git克隆的是该Git仓库服务上的几乎所有数据(包括日志信息、历史记录等),而不仅仅是复制工作所需要的文件。当你执行git clone 命令的时候,默认配置下远程Git仓库中的每一个文件的每一个版本都将被拉取下来。

 git clone 远程仓库地址url

移除无效的远程仓库

git remote rm 远程仓库的名字
  • 此命令只是从本地移除远程仓库的记录,并不会真正影响到远
    程仓库。

Git远程仓库推送、抓送,和拉取

推送:当你想分享你的代码时,可以将其推送到远程仓库。

 git push [remote-name][branch-name]

git fetch是从远程仓库获取最新版本到本地仓库,不会自动merge,想看见文件就需要手动进行合并文件 git merge origin/master 。

 git fetch

git pull是从远程仓库获取最新版本到本地仓库,会自动merge

 git pull

Git远程仓库多人协作冲突问题

1、下载远程仓库

git clone
https://gitee.com/WCCRegistered/hundredbattles.git wcc
git clone
https://gitee.com/WCCRegistered/hundredbattles.git kalista

2、设置各自用户环境变量

git config --local -user.name ""
git config --local -user.email ""

3、制造冲突
第一用户修改一个文件并提交

vim a.info
git commit -am"sumbit file"
git push

第二用户慢了一步在提交时发生了报错

vim a.info
git commit -am"sumbit file2"
git push

4、解决冲突
拉取最新代码

 git pull

查看哪里冲突

new
<<<<<<< HEAD
#你自己写的
this is baizhan
=======
#别人写的并且提交了的代码
public class HelloWorld{}
>>>>>>>
0b8b926afc79bd22d220bd0cb76ef7d97b5fb5d4

手动删除不要的代码
重新提交

git commit -am"修改了用户头像信息"
git push

Git远程仓库SSH协议推送

SSH为Secure Shell(安全外壳协议)的缩写,由IETF的网络小组(Network Working Group)所制定。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有
效防止远程管理过程中的信息泄露问题。
配置SSH协议
1、使用命令ssh-keygen -t rsa生成公钥和私钥

ssh-keygen -t rsa

**注意:**执行完成后在window本地用户.ssh目录(C:\Users\Administrator.ssh)下生成如下名称的公钥和私钥。
2、复制公钥文件(publisher文件)内容至服务器上
在这里插入图片描述
3、配置完成后就可以正常传输数据了

Git分支

查看分支

git branch

创建分支

git branch 分支名字

修改分支

git branch -m 修改分支名字

切换分支

 git checkout b1

推送至远程仓库分支

 git push 远程仓库名字 分支名字

合并分支

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

删除分支

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Git标签

Git可以给历史中的某一个提交打上标签,以示重要。比较有代表性的是人们会使用这个功能来标记发布结点(v1.0、v1.2等)。标签指的是某个分支某个特定时间点的状态。通过标签,可以很方便的切换到标记时的状态。
什么时候用标签:
通常开发软件时会完成特定的“里程碑”,如软件版号1.0.0或beta-release之类的,这时就很适合使用标签做标记。
标签与分支有什么区别:
标签与分支的区别是,分支会随着Commit而移动,但标签不会。之前介绍过当Git往前推,进一个Commit时,它所在的分支会跟着向前移动。而标签一旦贴上去不管Commit怎么前进,标签都会留
在原来贴的那个位置上。因此,分支可以看成是“会移动的标签”。

  • 注意:这两者在被删除的时候,都不会影响到被指到的那个对象。

标签的基本操作

1、列出已有标签

git tag

2、创建标签

git tag 标签名字

3、查看标签信息

git show 标签名字

4、标签推送至远程仓库

 git push 远程仓库名字 标签名

5、检出标签
新建一个分支,指向某个tag

git checkout -b [branch] [tag]

6、删除标签
删除本地标签

git tag -d [tag]

删除远程标签

$ git push origin :refs/tags/标签名字
  • 注意::refs/tags/是固定写法

Git工作流

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python3实现“美颜”功能

导语利用Python实现美颜。。。这是之前在GitHub上下载的一个项目。。。似乎有些日子了。。。所以暂时找不到原项目的链接了。。。今天抽空看了下它源代码的主要思想&#xff0c;似乎挺简单的。。。于是决定用Python3自己复现一下。。。T_T感觉还是挺有趣的。。。Just have a tr…

源码分析Spring @Configuration注解如何巧夺天空,偷梁换柱。

前言 回想起五年前的一次面试&#xff0c;面试官问Configuration注解和Component注解有什么区别&#xff1f;记得当时的回答是&#xff1a; 相同点&#xff1a;Configuration注解继承于Component注解&#xff0c;都可以用来通过ClassPathBeanDefinitionScanner装载Spring bean…

IT服务发布管理过程文件

目的 规范发布管理的提交、审批、沟通、测试、回滚、实施等活动。 范围 适用于我公司的IT服务管理重大变更的内、外部发布。 术语定义 发布&#xff1a;将一个或多个变更交付、分发到实际运行环境中并可对其进行追溯。非项目的IT服务重大变更需要遵循本过程进行发布。发布主要包…

论文投稿指南——中文核心期刊推荐(工业经济)

【前言】 &#x1f680; 想发论文怎么办&#xff1f;手把手教你论文如何投稿&#xff01;那么&#xff0c;首先要搞懂投稿目标——论文期刊 &#x1f384; 在期刊论文的分布中&#xff0c;存在一种普遍现象&#xff1a;即对于某一特定的学科或专业来说&#xff0c;少数期刊所含…

使用TorchGeo进行地理空间深度学习

前言TorchGeo是一个PyTorch域库&#xff0c;提供特定于地理空间数据的数据集、采样器、转换和预训练模型。https://github.com/microsoft/torchgeo几十年来&#xff0c;地球观测卫星、飞机和最近的无人机平台一直在收集越来越多的地球表面图像。有了关于季节和长期趋势的信息&a…

【算法】算法基础入门详解:轻松理解和运用基础算法

&#x1f600;大家好&#xff0c;我是白晨&#xff0c;一个不是很能熬夜&#x1f62b;&#xff0c;但是也想日更的人✈。如果喜欢这篇文章&#xff0c;点个赞&#x1f44d;&#xff0c;关注一下&#x1f440;白晨吧&#xff01;你的支持就是我最大的动力&#xff01;&#x1f4…

查找Pycharm跑代码下载模型存放位置以及有关模型下载小技巧(model_name_or_path参数)

目录一、前言二、发现问题三、删除这些模型方法一&#xff1a;直接删除注意方法二&#xff1a;代码删除一、前言 当服务器连不上&#xff0c;只能在本地跑代码时需要使用***预训练语言模型进行处理 免不了需要把模型下载到本地 时间一长就会发现C盘容量不够 二、发现问题 正…

c++11 标准模板(STL)(std::unordered_map)(九)

定义于头文件 <unordered_map> template< class Key, class T, class Hash std::hash<Key>, class KeyEqual std::equal_to<Key>, class Allocator std::allocator< std::pair<const Key, T> > > class unordered…

Python进阶-----高阶函数zip() 函数

目录 前言&#xff1a; zip() 函数简介 运作过程&#xff1a; 应用实例 1.有序序列结合 2.无序序列结合 3.长度不统一的情况 前言&#xff1a; 家人们&#xff0c;看到标题应该都不陌生了吧&#xff0c;我们都知道压缩包文件的后缀就是zip的&#xff0c;当然还有r…

Mybatis源码分析系列之第四篇:Mybatis中代理设计模型源码详解

一&#xff1a; 前言 我们尝试在前几篇文章的内容中串联起来&#xff0c;防止各位不知所云。 1&#xff1a;背景 我们基于Mybatis作为后台Orm框架进行编码的时候&#xff0c;有两种方式。 //编码方式1 UserDao userDao sqlSession.getMapper(UserDao.class); userDao.quer…

[入门必看]数据结构1.1:数据结构的基本概念

[入门必看]数据结构1.1&#xff1a;数据结构的基本概念第一章 绪论1.1 数据结构的基本概念知识总览1.1.1 基本概念和术语数据类型、抽象数据类型&#xff1a;1.1.2 数据结构的三要素数据的逻辑结构数据的物理结构&#xff08;存储结构&#xff09;数据的运算知识回顾与重要考点…

【数据库概论】第十一章 数据库并发控制

第十一章 并发控制 在多处理机系统中&#xff0c;每个处理机可以运行一个事务&#xff0c;多个处理机可以同时运行多个事务&#xff0c;实现多个事务并行运行&#xff0c;这就是同时并发方式。当多个用户并发存取数据库时会产生多个事务同时存取同一事务的情况&#xff0c;如果…

ESP32设备驱动-红外寻迹传感器驱动

红外寻迹传感器驱动 1、红外寻迹传感器介绍 红外寻迹传感器具有一对红外线发射管与接收管,发射管发射出一定频率的红外线,当检测方向遇到障碍物(反射面)时,红外线反射回来被接收管接收,经过比较器电路处理之后,输出接口会输出一个数字信号(低电平或高电平,取决于电路…

Nginx配置实例-反向代理案例二

实现效果&#xff1a;使用nginx反向代理&#xff0c;根据访问的路径跳转到不同端口服务 nginx监听端口为9000&#xff0c; 访问 http://127.0.0.1:9000/edu/ 直接跳转到127.0.0.1:8080 访问 http://127.0.0.1:9000/vod/ 直接跳转到127.0.0.1:8081 一、准备工作 1. 准备两个tom…

TCP相关概念

目录 一.滑动窗口 1.1概念 1.2滑动窗口存在的意义 1.3 滑动窗口的大小变化 1.4丢包问题 二.拥塞控制 三.延迟应答 四.捎带应答 五.面向字节流 六.粘包问题 七.TIME_WAIT状态 八.listen第2个参数 九.TCP总结 一.滑动窗口 1.1概念 概念&#xff1a;双方在进行通信时&a…

2023年软考高级-系统分析师考试学习指导计划!

2023年软考高级-系统分析师考试学习指导计划&#xff01; 一、导学阶段 第一天 考试情况及备考攻略&#xff1a;https://www.educity.cn/xuanke/rk/rjsp/?sywzggw 考试介绍&#xff1a;https://www.educity.cn/wangxiao2/c410653/sp110450.html 考试经验分享&#xff1a;h…

如何在Linux中优雅的使用 head 命令,用来看日志简直溜的不行

当您在 Linux 的命令行上工作时&#xff0c;有时希望快速查看文件的第一行&#xff0c;例如&#xff0c;有个日志文件不断更新&#xff0c;希望每次都查看日志文件的前 10 行。很多朋友使用文本编辑的命令是vim&#xff0c;但还有个命令head也可以让轻松查看文件的第一行。 在…

记录使用chatgpt的复杂经历

背景 由于最近要写论文&#xff0c;c站的gpt也变样了&#xff0c;无奈之下和同学借了一个gpt账号&#xff0c;才想起没有npv&#xff0c;不好意思去要&#xff0c;也不想买&#xff0c;于是我找了很多临时免费的直到我看到有一家&#xff0c;邀请10人即可&#xff0c;而且只用…

江苏专转本 专科生的最好出入

专转本 专科生的最好出入(1) 减少每天刷某音&#xff0c;刷朋友圈的时间无所事事、捧着手机刷的不是某音就是朋友圈&#xff0c;三年下来没去成一次图书馆。碎片化信息很大程度只是在浪费时间&#xff0c;不如每天比同龄人至少多出1小时时间&#xff0c;用来看书、护肤、健身。…

磨金石教育摄影技能干货分享|高邮湖上观花海

江苏高邮&#xff0c;说到这里所有人能想到的&#xff0c;就是那烟波浩渺的高邮湖。高邮在旅游方面并不出名&#xff0c;但是这里的自然人文景观绝对不输于其他地方。高邮不止有浩瀚的湖泊&#xff0c;春天的油菜花海同样壮观。春日的午后&#xff0c;与家人相约游玩&#xff0…