Git 版本管理使用-介绍-示例

文章目录

  • Git是一种版本控制工具,它可以帮助程序员组织和管理代码的变更历史
  • Git的使用方式:
  • 常见命令
  • 安装Git软件
    • 第一次上传
    • 分支
      • 删除分支

Git是一种版本控制工具,它可以帮助程序员组织和管理代码的变更历史

以下是Git的基本概念和使用方式:

  1. 仓库(Repository):Git使用仓库来存储代码的历史变更记录,包括所有的代码文件和版本信息。一个Git仓库可以存储在本地计算机或者远程服务器上。

  2. 分支(Branch):Git允许程序员在同一个仓库中创建多个不同的分支,每个分支可以包含不同版本的代码。程序员可以在不同的分支上进行开发和实验,最终将不同分支的代码合并起来。

  3. 提交(Commit):Git的基本单位是提交(Commit),每次提交是对代码的一个修改或一系列修改的快照。每个提交都包含一个唯一的标识符,以及提交者、提交时间等元数据。

  4. 拉取(Pull):Git允许程序员从远程仓库中拉取代码到本地计算机上,以便查看和修改代码。使用拉取功能需要先连接到远程仓库并获取访问权限。

  5. 推送(Push):若要将本地的代码更改推送到远程仓库,程序员需要使用推送功能。推送将所有本地的提交上传到远程仓库中。

  6. 合并(Merge):当两个分支的代码有冲突时,程序员可以使用合并(Merge)来将两个分支的代码合并在一起。合并时需要解决冲突,保留两个分支的代码。

  7. 标签(Tag):Git允许程序员对代码仓库中的某个版本打上标签。标签一般用于标识一个版本或者某个重要的里程碑,以便于查找和回溯。

Git的使用方式:

  1. 首先在本地计算机或者远程服务器上创建一个新的Git仓库;
  2. 将代码文件添加到仓库中;
  3. 使用提交功能将代码文件的修改保存到仓库中;
  4. 使用分支功能在同一个仓库中创建多个不同的分支,进行开发和实验;
  5. 使用拉取和推送功能连接到远程仓库,并将代码从本地推送到远程仓库;
  6. 使用合并功能将不同分支的代码合并到一起;
  7. 使用标签功能打上标签,以便于查找和回溯。

常见命令

创建仓库

git init 初始化仓库
git clone 拷贝一份远程仓库,也就是下载一个项目。

提交与修改

git add 添加文件到仓库
git status 查看仓库当前的状态,显示有变更的文件。
git diff 比较文件的不同,即暂存区和工作区的差异。
git commit 提交暂存区到本地仓库。
git reset 回退版本。
git rm 删除工作区文件。
git mv 移动或重命名工作区文件。
提交日志
git log 查看历史提交记录
git blame 以列表形式查看指定文件的历史修改记录

远程操作

git remote 远程仓库操作
git fetch 从远程获取代码库
git pull 下载远程代码并合并
git push 上传远程代码并合并

安装Git软件

去这里下载Git下载地址,选择你需要的版本下载安装即可;
安装完后你可以直接打开利用指令进入你的项目;或者在你的项目目录里,右键选择Git Bash Here打开
git

打开将你的用户名,邮箱配置了,这是个全局配置,会把所有这个电脑上的仓库都写上,当然你可以针对某个仓库设不同的

git config --global user.name "名字"
git config --global user.email "邮箱"

第一次上传

按照流程走,先初始化仓库,在工作目录下生成一个.git隐藏文件夹

git init

把目录下的文件全部添加进本地仓库 (.)代表全部,也可以指定文件名添加

git add .

关联远程仓库

git commit -m "1.0"

把文件提交到仓库

git remote add origin 刚刚的地址

把本地库的所有内容推送到远程库上

git push -u origin master

分支

上传一个独立的分支(比如代码是从工程中直接DOWNLOAD ZIP文件,该文件与原MASTER分支是独立的)

1、git init (在本地工程目录下)
2、git add .
3、git commit -m “luyang” (”luyang“为分支名)
4、git branch luyang (创建分支)
5、git checkout luyang (切换分支)
6、git remote add origin http://192.168.36.10:10080/quantum_rng_testing/nist (”quantum_rng_testing/nist“ 为工程的目录,这次不要后面的.git后缀)
7、git push origin luyang (将分支上传)
注意:如果提示 "please tell me who you are“
在.git 目录下的config文件,在最后添加
[user]
name = xxxx
email = xxxxxxx@xx.com

这就创建了一个分支并上传了

合并分支

git merge luyang

合并分支
然后去远程仓库看一下合并成功了没有,如果没有则执行下面这个命令:

git push --force origin master

合并分支

删除分支

在合并后就可以将分支删除了,可以在远程仓库的分支管理里删除
或者执行

git branch -d 分支名称

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

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

相关文章

【Git系列】分支操作

🐳分支操作 🧊1. 什么是分支🧊2. 分支的好处🧊3. 分支操作🪟3.1 查看分支🪟3.2 创建分支🪟3.3 切换分支 🧊4. 分支冲突🪟4.1 环境准备🪟4.2 分支冲突演示 &am…

01 Excel常用高频快捷键汇总

目录 一、简介二、快捷键介绍2.1 常用基本快捷键1 复制:CtrlC2 粘贴:CtrlV3 剪切:CtrlX4 撤销:CtrlZ5 全选:CtrlA 2.2 常用高级快捷键1 单元格内强制换行:AltEnter2 批量输入相同的内容:CtrlEnt…

机器学习-Basic Concept

机器学习(Basic Concept) videopptblog Where does the error come from? 在前面我们讨论误差的时候,我们提到了Average Error On Testing Data是最重要的 A more complex model does not lead to better performance on test data Bias And Variance Bias(偏差) …

排序算法(冒泡排序、选择排序、插入排序、希尔排序、堆排序、快速排序、归并排序、计数排序)

🍕博客主页:️自信不孤单 🍬文章专栏:数据结构与算法 🍚代码仓库:破浪晓梦 🍭欢迎关注:欢迎大家点赞收藏关注 文章目录 🍓冒泡排序概念算法步骤动图演示代码 &#x1f34…

数学建模学习(7):Matlab绘图

一、二维图像绘制 1.绘制曲线图 最基础的二维图形绘制方法:plot -plot命令自动打开一个图形窗口Figure; 用直线连接相邻两数据点来绘制图形 -根据图形坐标大小自动缩扩坐标轴,将数据标尺及单位标注自动加到两个坐标轴上,可自定…

【Linux】sed修改文件指定内容

sed修改文件指定内容: 参考:(5条消息) Linux系列讲解 —— 【cat echo sed】操作读写文件内容_shell命令修改文件内容_星际工程师的博客-CSDN博客

理解构建LLM驱动的聊天机器人时的向量数据库检索的局限性 - (第1/3部分)

本博客是一系列文章中的第一篇,解释了为什么使用大型语言模型(LLM)部署专用领域聊天机器人的主流管道成本太高且效率低下。在第一篇文章中,我们将讨论为什么矢量数据库尽管最近流行起来,但在实际生产管道中部署时从根本…

【编译】gcc make cmake Makefile CMakeList.txt 区别

文章目录 一 关系二 gcc2.1 编译过程2.2 编译参数2.3 静态库和动态库1 后缀名2 联系与区别 2.4 GDB 调试器1 常用命令 三 make、makefile四 cmake、cmakelist4.1 语法特性4.2 重要命令4.2 重要变量4.3 编译流程4.4 两种构建方式 五 Vscode5.0 常用快捷键5.1 界面5.2 插件5.3 .v…

点播播放器如何自定义额外信息(统计信息传值)

Web播放器支持设置观众信息参数&#xff0c;设置后在播放器上报的观看日志中会附带观众信息&#xff0c;这样用户就可以通过管理后台的统计页面或服务端API来查看特定观众的视频观看情况了。 播放器设置观众信息参数的代码示例如下&#xff1a; <div id"player"…

加利福尼亚大学|3D-LLM:将3D世界于大规模语言模型结合

来自加利福尼亚大学的3D-LLM项目团队提到&#xff1a;大型语言模型 (LLM) 和视觉语言模型 (VLM) 已被证明在多项任务上表现出色&#xff0c;例如常识推理。尽管这些模型非常强大&#xff0c;但它们并不以 3D 物理世界为基础&#xff0c;而 3D 物理世界涉及更丰富的概念&#xf…

【100天精通python】Day20:文件及目录操作_os模块和os.psth模块,文件权限修改

目录 专栏导读 1 文件的目录操作 os模块的一些操作目录函数​编辑 os.path 模块的操作目录函数 2 相对路径和绝对路径 3 路径拼接 4 判断目录是否存在 5 创建目录、删除目录、遍历目录 专栏导读 专栏订阅地址&#xff1a;https://blog.csdn.net/qq_35831906/category_12…

Java中的代理模式

Java中的代理模式 1. 静态代理JDK动态代理CGLib动态代理 1. 静态代理 接口 public interface ICeo {void meeting(String name) throws InterruptedException; }目标类 public class Ceo implements ICeo{public void meeting(String name) throws InterruptedException {Th…

【信号去噪和正交采样】流水线过程的一部分,用于对L波段次级雷达中接收的信号进行降噪(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

计算机网络——应用层

文章目录 **1 网络应用模型****2 域名系统DNS****3 文件传输协议FTP****4 电子邮件****4.1 电子邮件系统的组成结构****4.2 电子邮件格式与MIME****4.3 SMTP和POP3** **5 万维网WWW****5.1 HTTP** 1 网络应用模型 客户/服务器模型 C/S 服务器服务于许多来自其他称为客户机的主…

uniapp跨域解决

uniapp跨域解决 跨域是什么 跨域指的是浏览器不能执行其他网站的脚本&#xff0c;当一个网页去请求另一个域名的资源时&#xff0c;域名、端口、协议任一不同&#xff0c;就会存在跨域。跨域是由浏览器的同源策略造成的&#xff0c;是浏览器对JavaScript施加的安全限制。 报错…

Spring AOP 中,切点有多少种定义方式?

在 Spring AOP 中&#xff0c;我们最常用的切点定义方式主要是两种&#xff1a; 使用 execution 进行无侵入拦截。使用注解进行拦截。 这应该是是小伙伴们日常工作中使用最多的两种切点定义方式了。但是除了这两种还有没有其他的呢&#xff1f;今天松哥就来和大家聊一聊这个话…

【C语言初阶(20)】调试练习题

文章目录 前言实例1实例2 前言 在我们开始调试之前&#xff0c;应该有个明确的思路&#xff1b;程序是如何完成工作的、变量到达某个步骤时的值应该是什么、出现的问题大概会在什么位置。这些东西在调试之前都需要先确认下来&#xff0c;不然自己都不知道自己在调试个什么东西…

FFmpeg aresample_swr_opts的解析

ffmpeg option的解析 aresample_swr_opts是AVFilterGraph中的option。 static const AVOption filtergraph_options[] {{ "thread_type", "Allowed thread types", OFFSET(thread_type), AV_OPT_TYPE_FLAGS,{ .i64 AVFILTER_THREAD_SLICE }, 0, INT_MA…

二十三种设计模式第二十篇--备忘录模式

备忘录模式&#xff0c;备忘录模式属于行为型模式。它允许在不破坏封装的情况下捕获和恢复对象的内部状态。保存一个对象的某个状态&#xff0c;以便在适当的时候恢复对象&#xff0c;该模式通过创建一个备忘录对象来保存原始对象的状态&#xff0c;并将其存储在一个负责管理备…