【星海随笔】git的使用

1.在终端,检查git是否安装
git --version
2.没有安装的话去,官网,下载git
3.一直点下一步即可
4.安装后在终端检查git是否安装好
5.设置用户名和邮件地址(最好和GitHub的用户名/邮箱保持一致)
git config --global user.name “自己的用户名”
git config --global user.email “自己的邮箱”
#检查是否配置成功
git config --global --list

git init
git add . 添加所有项目至缓存区
git add 目录名:添加指定目录到缓存区
git add 文件名:添加指定文件到缓存区
git commit -m ‘first commit’  
# 提交至本地仓库
# 推送本地仓库信息至远程仓库
git push origin master:将本地分支的更新内容,全部推送至远程仓库 master 分支
git push origin dev:将本地 dev 分支推送到远程,再由一个人统一加到 master 分支上
拉取远程仓库最新文件
git pull:拉取远程仓库所有分支合并到本地
git pull origin master:拉取远程master分支,合并到当前本地master分支
git fetch:仅做拉取操作,不做合并,合并需要自己再找其他方法
git remote add origin git@github.com:帐号名/仓库名.git
git pull origin master
git push origin master # -f 强推
git clone git@github.com:git帐号名/仓库名.git

多用户协作

1.创建分支

git branch 分支名
git branch dev

2.查看分支

git branch

3.创建test分支

git branch test
git brach

4.切换分支
注意:切换前提:保证当前分支工作区clean状态

git checkout dev
git branch

5.删除分支

git branch -d test

6.创建并切换到新分支

git checkout -b test

7.测试

7.1在test分支,commit一段代码git add .git commit -m “”
7.2切换到dev分支git checkout dev#删除test分支,是否报错,如果需要强制删除,git branch -D testgit branch -d test
7.3如果需要强制删除git branch -D test

1.在dev分支,开发
2.切换到master分支

  git checkout mastergit branch #查看分支状态

3.将dev分支的代码合并到master分支,dev分支不变,master分支代码会被覆盖,结果使用dev分支的代码

git merge dev

1.在master分支,修改test.html 并提交
2.切换到dev分支,修改同一个文件的相同位置的内容 并提交
3.切换到master分支,将dev分支合并到master,#发生错误.#

git merge dev

解决方式一:撤销合并:直接使用master分支代码,舍弃忽略其他分支代码
   #放弃忽略合并
     git merge --abort
解决方式二:和冲突分支的开发人员协商,确定最终保留代码,手动删除冲突
和冲突分支的开发人员协商,确定最终保留代码,手动删除冲突
重新提交
查看当前分支状态,并提交
   git status
   git add .
   //这里不需要描述 -m,接下来会进入一个可编辑的页面:这里输入描述
   git commit

当文件已经被add了,处于暂存区,撤销追踪操作

1.查看当前文件状态
  git status

2.撤销追踪操作
  git reset HEAD 文件名
  git reset HEAD test3.html
  本次add的文件撤销到工作区
  git reset HEAD *

3.一键还原到上次提交状态
  git checkout – test3.html

想要回到上一版本或者指定版本时如何进行操作

1.在根目录下,创建version.html 和 v.html两个文件,添加内容(h1 版本1 /h1)视为”版本1“,并提交
  git add .
  git commit -m “版本1”
  git status
  git log --pretty=oneline

2.将内容改为“版本2”,追踪并提交
  git commit -am “版本2”
  git status
  git log --pretty=oneline
执行git commit -am "提交描述"即可将add和commit操作合并, 不需要先git add file 再 git commit -m “提交描述” 了

3.按照第二步骤,继续提交版本3,版本4,版本5
  不要忘记修改h1标签里的内容

4.查看所有历史记录
git log --pretty=oneline

5.回到上一版本,已经提交,没有push
#git reset --soft 上一个commitID 撤销commit
  git reset --soft 版本4的commitID # 撤销版本5的commit

#git reset --mixed 上一个commitID 两个动作
  git reset --mixed 版本4的commitID 撤销版本5的commit和add两个动作

#撤销并舍弃版本号之后的所有提交记录,使用需要谨慎!!!
#撤销后,工作区是版本4的代码,版本5丢失了,谨慎使用!!
  git reset --hard HEAD^
#回到上两个版本
  git reset --hard HEAD^^
#回到上三个版本
  git reset --hard HEAD~3
#方式二:通过commit id的前7位,回到指定版本(往前/往后都可以)
  git reset --hard 473233

git log --oneline --graph --all 查看所有分支的版本路线图

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

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

相关文章

数据结构: 哈希桶

目录 1.概念 2.模拟实现 2.1框架 2.2哈希桶结构 2.3相关功能 Modify --Insert --Erase --Find 2.4非整型数据入哈希桶 1.仿函数 2.BKDR哈希 1.概念 具有相同地址的key值归于同一集合中,这个集合称为一个桶,各个桶的元素通过单链表链接 2.模拟实现 2.1框架 a.写出…

2.3.3 交换机的RSTP技术

实验2.3.3 交换机的RSTP技术 一、任务描述二、任务分析三、具体要求四、实验拓扑五、任务实施1.交换机的基本配置。2.开启交换机的STP。3.配置SW3A和SW3B上STP的优先级。将SW3A配置为根交换机,SW3B配置为备用根交换机。4.配置SW2A和SW2B的边缘接口 六、任务验收七、…

使用基于swagger的knife4j自动生成接口文档

添加swagger依赖springfox&#xff0c;添加knife4j依赖 <dependency><groupId>io.springfox</groupId><artifactId>springfox-boot-starter</artifactId> </dependency> <dependency><groupId>com.github.xiaoymin</group…

C语言:union类型

C语言的union类型是一种用于存储不同数据类型的数据结构&#xff0c;但与struct类型不同&#xff0c;union只能同时存储其中的一个成员的值&#xff0c;而不是所有成员的值。这可以节省内存&#xff0c;因为union的大小等于其最大成员的大小。 union UnionName {data_type mem…

postman中文乱码

在header中添加这两个&#xff1a; Content-Type application/json;charsetUTF-8 Accept application/json;charsetUTF-8

Mac下flutter工程配置Gitlab cicd打包(暂时仅限android侧)

写的太粗糙&#xff0c;可能不太适合完全不懂的同学&#xff0c;但是实在没时间&#xff0c;而且也不太会写&#xff0c;权当做一个记录吧&#xff0c;对了还没有搞docker这些&#xff0c;还在持续学习中 1.GitLab Runner&#xff08;打包机&#xff09; 注意:需要有对应的权…

docker容器安装gdb

1)将设备连到大网&#xff08;大网转接小网&#xff09; 交换机上&#xff1a; 1.查看现在的网关&#xff1a;ip route show 已有网关现象&#xff1a; default via 192.168.2.2 dev eth0 //默认网关 192.168.2.0/24 dev eth0 proto kernel scope link src 192.168.2.33 240.1…

MySQL基础操作

注:mysql是大小写不敏感的. 1.数据库基础操作(展示) //1.展示当前数据库 show databases;//2.创建数据库 create database 数据库名;//3.使用数据库 use 数据库名;//4.删除数据库 drop database 数据库名;2.SQL中基本类型 2.1 数值类型(整数和浮点型) 注:decimal和numeric…

asp.net生产线远程故障诊断系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net 生产线远程故障诊断系统是一套完善的web设计管理系统&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为vs2010&#xff0c;数据库为sqlserver2008&#xff0c;使用 c#语言开发 asp.net生产线远程故障诊断…

搭建自己的MQTT服务器,实现设备上云(Ubuntu+EMQX)

一、EMQX介绍 这篇文章教大家在ECS云服务器上部署EMQX,搭建自己私有的MQTT服务器,配置EMQX实现设备上云,设备数据转发,存储;服务器我采用的华为云的ECS服务器,系统选择Ubuntu系统。 Windows版本的看这里: https://blog.csdn.net/xiaolong1126626497/article/details/1…

js上传下载函数封装

上传函数封装 const addSubmit (val) > {if (val.length < 1) {messageTitle(上传文件不能为空, warning) // messageTitle是我封装的elmentui的message组件&#xff0c;可根据自己的代码调整} else {const formData new FormData()formData.append(multipartFile, val…

伐木猪小游戏

欢迎来到程序小院 伐木猪 玩法&#xff1a;控制小猪点击屏幕左右砍树&#xff0c;不能碰到树枝&#xff0c;考验手速与眼力&#xff0c;记录分数&#xff0c;快去挑战伐木吧^^。开始游戏https://www.ormcc.com/play/gameStart/199 html <script type"text/javascript…

Map(关联数组)和Set(集合)

目录 Map和Set是用来专门查找的数据结构,查找效率非常高 Map是key-value模型(对应了两个东西) Set是纯key模型(只对应i一个东西) Map的使用 Map的方法 Map的put()方法 Map的get()方法 Map的getOrdefault()方法 Map的keySet()方法 Map的entrySet()方法 Entry是Map的内部接口类​…

TensorFlow(1):深度学习的介绍

1 深度学习与机器学习的区别 学习目标&#xff1a;知道深度学习与机器学习的区别 区别&#xff1a;深度学习没有特征提取 1.1 特征提取方面 机器学习的特征工程步骤是要靠手动完成的&#xff0c;而且需要大量领域专业知识深度学习通常由多个层组成&#xff0c;它们通常将更简…

【数据结构】线性表的链式存储结构

&#x1f984;个人主页:修修修也 &#x1f38f;所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 顺序存储结构的不足的解决办法 从上一节我们对顺序表的讨论中可见,线性表的顺序存储结构的特点是: 逻辑关系上相邻的两个元素在物理位置(内存)上也相邻,因此可以随机存取表中…

持续交付-Jenkinsfile 语法

实现 Pipeline 功能的脚本语言叫做 Jenkinsfile&#xff0c;由 Groovy 语言实现。Jenkinsfile 一般是放在项目根目录&#xff0c;随项目一起受源代码管理软件控制&#xff0c;无需像创建"自由风格"项目一样&#xff0c;每次可能需要拷贝很多设置到新项目&#xff0c;…

Springboot---整合对象储存服务MinIO

OSS 「OSS」的英文全称是Object Storage Service&#xff0c;翻译成中文就是「对象存储服务」&#xff0c;官方一点解释就是对象存储是一种使用HTTP API存储和检索非结构化数据和元数据对象的工具。 白话文解释就是将系统所要用的文件上传到云硬盘上&#xff0c;该云硬盘提供了…

FreeRTOS源码阅读笔记1--task.c

在FreeRTOS中&#xff0c;创建任务有两种方式&#xff1a;动态创建和静态创建。区别就是&#xff1a;动态创建任务的栈和任务TCB是由操作系统动态分配&#xff08;malloc&#xff09;内存空间&#xff0c;任务删除时可以释放内存&#xff08;free&#xff09;&#xff1b;而静态…

css设置浏览器表单自动填充时的背景

浏览器自动填充表单内容&#xff0c;会自动设置背景色。对于一般的用户&#xff0c;也许不会觉得有什么&#xff0c;但对于要求比较严格的用户&#xff0c;就会“指手画脚”。这里&#xff0c;我们通过css属性来设置浏览器填充背景的过渡时间&#xff0c;使用户看不到过渡后的背…

Python--快速入门三

Python--快速入门三 1.Python列表 列表是Python用于储存一系列数据的容器(特点是可以存放不同类型的数据) python_list ["键盘",True,66,88.8] 列表是可变数据类型&#xff0c;可以直接对列表中的元素进行更改而不需要赋值给本身 列表方法&#xff1a; 1.appen…