【星海随笔】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 test
  git branch -d test
7.3如果需要强制删除
  git branch -D test

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

  git checkout master
  git 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 查看所有分支的版本路线图

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

建表时如何合理选择字段类型

前言 我们在建表的时候关于字段类型的选择会有这么几类人: 严谨型 严格调研每个字段可能的大小,然后根据不同字段类型的限制,进行选择,这一类人在创建关系型数据表的时候是没有问题的。图自己省事型 把所有字段都设置为String&a…

100 寻找重复数

寻找重复数 题解1 二分法题解2 快慢指针(同环形链表2(ab)(ab)kL) 给定一个包含 n 1 个整数的数组 nums ,其数字都在 [1, n] 范围内(包括 1 和 n),可知至少存在一个重复的整数。 假设 nums 只有 一个重复的整数 ,返…

使用Pytorch的一些小细节(一)

文章目录 前言数据结构-张量max函数索引函数赋值函数拼接函数 前言 由于不经常动手写代码,所以对于python语言中的常见数据结构的用法也不是很熟悉,对于pytorch中的数据结构就更加不熟悉了。之前的代码基础是基于C语言的,属性都是自己定义&a…

动态规划-构建乘积数组

** 描述 给定一个数组 A[0,1,…,n-1] ,请构建一个数组 B[0,1,…,n-1] ,其中 B 的元素 B[i]A[0]A[1]…*A[i-1]A[i1]…*A[n-1](除 A[i] 以外的全部元素的的乘积)。程序中不能使用除法。(注意:规定 B[0] A[1] * A[2] * … * A[n-1…

量子计算和量子通信技术:引领潜力无限的未来

近年来,随着量子计算和量子通信技术的迅速发展,它们在各个领域的广泛应用前景引起了人们的极大兴趣。本文将深入探讨量子计算和量子通信技术的普遍应用,以及它们预示的未来,同时提出业内人士需要注意的事项。 介绍:量子…

【Spring之底层核心架构概念解析】

文章目录 一、BeanDefinition二、BeanDefinitionReader2.1、AnnotatedBeanDefinitionReader2.2、XmlBeanDefinitionReader 五、ClassPathBeanDefinitionScanner六、BeanFactory七、ApplicationContext7.1、AnnotationConfigApplicationContext7.2、ClassPathXmlApplicationCont…

E云管家个微协议框架--新版本的利器

在互联网时代,高效、可靠的互联网协议对于实现稳定、安全的数据传输至关重要。E云管家作为一项创新性的IPAD协议构建工具,基于IPAD8.0.37协议为开发者提供了强大而灵活的功能,使他们能够轻松构建高效的通信协议。本文将介绍E云管家的主要特点…

python3.8及以上版本绑定gdal库的一个注意事项

作者:朱金灿 来源:clever101的专栏 为什么大多数人学不会人工智能编程?>>> gdal和python绑定参考文章:windows环境下python和gdal绑定方法   值得注意的是绑定python3.8及以上版本后在python程序中初始化gdal库时会出…

“三门问题”解决方案:换不换?更换策略与贝叶斯策略?附 Java 验证代码

文章目录 前言一、什么是“三门问题”?二、“三门问题”解决策略详解2.1、错误策略:直觉策略与随机策略2.2、更换策略与事件分析计算2.3、贝叶斯策略及分析流程 三、Java 语言验证“三门问题”总结 前言 “三门问题”作为一道经典逻辑推理题,…

【Linux】Linux常用命令—用户管理

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

《QT从基础到进阶·二十》QThreadPool线程池的使用

什么情况下比较适合用线程池&#xff1f; 比如我有上百个任务要同时处理&#xff0c;难道开上百个线程&#xff1f;NO&#xff01;&#xff01;&#xff01; 有了线程池的加持&#xff0c;自动给任务分配线程处理&#xff0c; 多线程不再是真爱~ 线程池创建&#xff1a; 1、自…

【带头学C++】----- 四、动态内存空间申请 ---- 4.1 动态内存分配

1.动态内存分配概述 在C和C等语言中&#xff0c;可以使用malloc、calloc、realloc或使用new等函数来动态分配内存空间&#xff0c;同时使用free、delete函数释放动态分配的内存空间&#xff0c;这样可以根据程序的实际需要动态管理内存&#xff0c;避免静态内存分配的局限性。 …

微信超实用的小功能

微信真的有超多实用小功能 平时很少注意到&#xff0c;每次都用传统的方法解决&#xff0c;浪费人家研发人员的一片苦心~ 1重要事项提醒&#xff1a;健忘症的福音&#xff1b; 步骤&#xff1a;长按消息-提醒-设置。 2 图片翻译&#xff1a;不用跳转翻译软件&#xff0c;一键翻…

什么是自动化测试框架?我们该如何搭建自动化测试框架?

无论是在自动化测试实践&#xff0c;还是日常交流中&#xff0c;经常听到一个词&#xff1a;框架。之前学习自动化测试的过程中&#xff0c;一直对“框架”这个词知其然不知其所以然。 最近看了很多自动化相关的资料&#xff0c;加上自己的一些实践&#xff0c;算是对“框架”…

数据分析-numpy

numpy numpy numpy简介优点下载ndarray的属性输出数据类型routines 函数ndarray对象的读写操作ndarray的级联和切分级联切分 ndarray的基本运算广播机制&#xff08;Broadcast&#xff09;ndarry的聚合操作数组元素的操作numpy 数学函数numpy 查找和排序 写在最后面 简介 nump…

js 变量声明与赋值 笔试踩坑题

文章目录 概述函数声明函数形参与实参函数预编译用一个例子说明一下&#xff0c;这四个步骤分别要干些什么。重复四个步骤&#xff0c;反复练习一下 全局编译多重执行期上下文 概述 别小看变量声明与赋值&#xff0c;在所有的笔试中&#xff0c;基本都会考&#xff0c;这个要多…

LeetCode刷题总结(一)

文章目录 前言题型排序问题动态规划 前言 本文把刷题过程中的总结记下来&#xff0c;方便未来回顾的时候继续拓展。 题型 排序问题 排序问题的解决方法有很多。对于简单算法来说&#xff0c;最重要的是记住思路&#xff1b;对于高级算法来说&#xff0c;最重要的是记住细节…

asp.net core weapi 结合identity完成登录注册

1.安装所需要的nuget包 <PackageReference Include"Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version"6.0.24" /><PackageReference Include"Microsoft.EntityFrameworkCore" Version"6.0.24" /><PackageR…

工作利器!熟悉这几款数据流图工具,事半功倍!

数据流图工具在现代工作中起到了非常重要的作用。无论是在企业内部的流程优化&#xff0c;还是在软件开发、项目管理、系统设计等领域&#xff0c;数据流图工具都扮演着关键的角色。本文将为大家介绍8款高效的数据流图工具&#xff0c;帮助大家选择适合自己工作需求的工具。 1.…

创建Springboot工程

前期准备 查看是否安装Java;javac命令是否可用; java -version javac 都安装好之后可以进行创建。 步骤 此处我是使用IntelliJ IDEA 进行创建 打开新建项目–选择Spring Initializr 服务器URL&#xff1a;可以使用默认 &#xff0c; 如果感觉太慢可以选择 http://start.a…