Git(分布式版本控制系统)

news2024/11/26 5:53:12

提到git了,我们先来说一下什么是git?

        1、通俗一点,就是一个人工版本控制器

                通过人工的复制行为来保存项目的不同阶段的内容,添加适当的一些描述文字加以区分

                    繁琐、容易出错

                    产生大量重复数据

       2、什么是版本控制?

                版本控制是指对软件开发过程中各种程序代码、说明文档等文件的变更进行管理,它将追踪文件变化,记录文件的变更时间、变更内容、甚至变更执行人进行记录,同时对每一个阶段性变更(不仅仅只是一个文件的变化)添加版本编号,方便将来进行查阅特定阶段的变更信息,甚至是回滚。

       3、版本控制工具

                通过程序完成上述人工版本控制行为

                        方便且功能强大

                        只记录不同版本之间变化的部分

       4、常见版本控制工具

                CVS

                SVN

                Git

        5、怎么工作的?

                首先我们得先了解两个重要概念

                        状态

                        区域

        6、git文件生命周期

           

        7、状态

                同时,git又提供了三种(也可以说是四种)不同的记录状态

                        已修改(modified)

                        已暂存(staged)

                        已提交(committed)

                有一个特殊的状态

                        未追踪(Untracked)

        8、区域

                git提供了三个不同的工作区,用来存放不同的内容

                        工作目录

                        暂存区域

                        git仓库

                        

        说完这些东西我们再来说下在写项目的过程中如何结合git去写

        首先你需要把你的项目用vscode代码编辑器去打开,打开之后因为我们需要结合git去完成这次项目。

        第一步:初始化仓库

        初始化仓库完成之后会出来一个.git的文件夹

        

        第二步:配置

                当安装完git应该做的第一件事就是设置你的用户名与邮件地址。这样做很重要,因为每一个git的提交都会使用这些信息,并且它会写入到你的每一次提交中,不可更改。

                git config user.name "你的姓名"(随便命名就可以)

                git config user.email "你的邮箱"(同上)

                配置设置完之后需要检查一下

                        打印所有的config        git config --list

                        打印指定的config         git config user.name

                工作流与基本操作,当一个项目被git初始化以后,只是表示我们希望通过git来管理当前的这个项目文件的不同时期版本记录,但是这个时候项目中已存在的文件,或者以后新增的文件都是没有进入版本控制管理的,它们是未追踪(untracked)的状态

        第三步:查看工作区的文件状态

                git status

                如果显示乱码的解决方式

                        git status显示乱码

                        git config --global core.quotepath false

                终端乱码的解决方式             

                        菜单 -> 设置 -> 文本 -> 本地 / 编码

                        或修改配置文件

             进入windoes的cmd 然后分别输入以下五行
                git config --global core.quotepath false
                git config --global gui.encoding utf-8
                git config --global i18n.commit.encoding utf-8
                git config --global i18n.logoutputencoding utf-8
                set LESSCHARSET=utf-8

        第四步:查看分支

                git branch

                查看完分支我们需要需要切换分支

                git checkout -b one

                因为不能在master分支上面进行操作,所以要创建一个分支并切换到这个分支上面

到了这部如果你的项目已经写完,那么需要提交到远程仓库上进行合并文件,因为写项目这个东西都是分工合作的,最低就是两个人,我们提交远程仓库的话我们需要进到设置-控制面板-添加一个凭据,,选择添加windows凭据,这个凭据的用户名和密码就是你注册码云(gitee)用户名和密码,

 填写完用户名和密码之后我们不是是提交到远程仓库嘛,我们如果用vscode来添加远程的话点击这个进去之后会有三个点,点击三个点,出现远程-添加远程,远程仓库的地址在你的码云主页的仓库有克隆/下载这个按钮如下图:,点击出现一个地址,复制完成之后添加远程,添加完会出现仓库名称,建议和自己远程仓库名称一样,不然可能会出错。

添加完之后你要是不确定添加上的话,选择删除完成仓库,如果出现你刚才添加上去的远程仓库,那就说明你添加上去了。

要在码云里边合文件的话,你需要先传一个空的项目,然后再把你完成的项目添加进去,两个项目的分支不能一样,先把他们俩进行合并,合并完成之后在把剩下那个项目给上传到远程仓库里边,因为写项目需要分工合作的嘛,最低就是两个人,所以在这里出现了两个项目,上传完成之后查看一下分支,看看上传成功没有,上传成功之后在进行合并一遍,如果项目没有啥大问题就是可以合并成功;但是不妨会出现合并不了的情况,那么我们就只能把项目给拉倒本地进行合并,指令如下

 git pull origin [远程分支名称]:[本地分支名称],拉倒本地有时候也会出现合并不了的情况,原因就是历史记录冲突,在合并指令加上 --allow-unrelated-histories这个指令,就能合并成功。

注意:合并完成之后的项目,你运行的话是打不开的,因为没有node-modules包,用指令npm i下载这个包,下载完成之后输入指令,这个时候项目就能正常打开了。

总结:以上就是Git是一个什么样的工具以及在你写项目完成之后拉倒远程仓库合并的各个操作,感谢您的观看!

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

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

相关文章

JVM16命令行

2. JVM 监控及诊断工具-命令行篇 2.1. 概述 简单命令行工具 在我们刚接触 java 学习的时候,大家肯定最先了解的两个命令就是 javac,java,那么除此之外,还有没有其他的命令可以供我们使用呢? 我们进入到安装 jdk 的…

JAVA并发编程面试题合集

1.在Java中守护线程和本地线程的区别? Java中的线程分为两种:守护线程(Daemon)和用户线程(User)任何线程都可以设置为守护线程和用户线程,通过方法Thread.setDaemon(boolean);true表…

框架开发有哪些优势?Java主流框架

什么是框架“框架(Framework)"一词最早出现在建筑领域,指的是在建造房屋前期构建的建筑骨架。在编程领域,框架就是应用程序的骨架,开发人员可以在这个骨架上加入自己的东西,搭建出符合自己需求的应用系…

mac电脑数据恢复?真正实用的方法(2023最新)

使用电脑的用户都知道,被删除的文件一般都会经过回收站,想要恢复它直接点击“还原”就可以恢复到原始位置。mac电脑同理也是这样,但是“回收站”在mac电脑显示为“废纸篓”。 如果电脑回收站,或者是废纸篓里面的数据被清空了&…

Nginx第一讲

目录 一、Nginx01 1.1 Nginx简介 1.1.1 Nginx介绍 1.1.2 Nginx的应用 1.1.3 关于代理 1.1.4 负载均衡 1.1.5 动静分离 1.2 安装Nginx 1.2.1 安装依赖环境 1.2.2 安装nginx 1.2.3 nginx配置文件(nginx.conf) 1.2.4 反向代理实例1 1.2.5 安装tomcat 1.2.6 反向代理…

插画教育培训机构最新排名

学原画插画在哪里学比较好,最新插画培训班排名,给大家梳理了国内最新5家专业的插画师培训班排名,各有优势和特色,给大家借鉴! 一:国内插画培训机构排名 1、轻微课(五颗星) 主打课程有…

flutter 微信通讯录

Flutter 仿制微信通讯录效果,致效果如下: 有几个技术细节: 总体可滑动,少于屏幕长度也可滑动对于数据的处理。昵称 拼音首字母排序,右侧字母导航,点击/滑动;移动到指定位置当点击/滑动 右侧移动…

大数据实操项目分享:餐饮智能推荐服务在线实习项目

项目背景:在“互联网"背景下,餐饮企业的经营方式发生了很大的变革:团购和020拓宽了销售 渠道,电子点餐、店内WIFI等信息技术提升了服务水平,大数据、私人定制更好地满足了细分市场的需求等。但是与此同时&#xf…

天!转转MySQL机房迁移半小时结束战斗?

文章目录1 背景2 迁移方案选择2.1 方案一:扩容主从切换2.2 方案二:级联切换2.3 方案对比3 如何又快又稳完成MySQL机房迁移3.1 提前搭建级联3.2 停服3.3 批量操作自动化,关键步骤解耦3.4 集群分级3.5 切换前、后置检查3.6 灰度切换验证4 写在最…

rk3288-android8.1-以太网ethernet和蓝牙Bluetooth

遇到一个现象,以太网和蓝牙打不开 经过不断分析和查找发现问题在.config中 CONFIG_MOTORCOMM_PHYy 会导致以太网的eth0注册不成功(现在是双网口,还有个USB网卡) 改成# CONFIG_MOTORCOMM_PHY is not set 后以太网可以正常 # CONFIG_RTC_DRV_RK808 is not set 会导致蓝牙打不…

【分类评价指标】如何评估多(二)分类算法的性能:Acc、Precision、Recall、F1等

【分类评价指标】如何评估多(二)分类算法的性能:Acc、Precision、Recall、F1等 文章目录【分类评价指标】如何评估多(二)分类算法的性能:Acc、Precision、Recall、F1等1. 前言2. 二分类任务2.1 混淆矩阵2.2…

工控攻击,黑客组织GhostSec 称入侵以色列55 家Berghof PLC

“巴以冲突”在网络上依然硝烟弥漫。当地时间9月12日消息, 一个名为GhostSec的黑客组织声称入侵了以色列55台Berghof可编程逻辑控制器(PLC)。该网络攻击行为被视为“解放巴勒斯坦”运动的组成部分。 以色列工业网络安全公司OTORIO对此次事件…

JVM内存结构和GC调优

一 、JVM简介 1.1 JVM是什么? Java Virtual Machine(Java虚拟机) Write Once Run Anywhere 1.2 JDK JRE JVM Java官网 :https://docs.oracle.com/javase/8/ Reference -> Developer Guides -> 定位到: https://docs.oracle.com/javase/8/docs…

MySQL数据库——JDBC编程

文章目录一、什么是Java的JDBC二、JDBC编程三、代码整体展示一、什么是Java的JDBC JDBC,即Java Database Connectivity。意思是java数据库连接。是一种用来执行 SQL 语句的 JavaAPI,是Java中数据库的连接规范。这个 API 由 java.sql* 和 javax.sql* 包中…

Windows 环境下,使用 ESP32-S3 USB 接口进行 JTAG 调试的流程

前提 在 windows 上安装 esp-idf CMD 软件编译环境,可参考“Windows 上搭建 ESP-IDF SDK 编译环境 Visual Studio Code 软件编程环境”说明。硬件上使用 ESP32-S3 USB 接口与 PC 端建立连接,为方便测试,可使用官方发布的 ESP32-S3-DevKitC-…

“办”了三年数字化活动,这家公司成为行业独角兽

疫情三年,竟然有公司靠办活动成为行业独角兽?你没听错!持续的疫情,让各行各业的数字化进程大大提速,活动这个历史悠久的领域也不例外。在疫情期间,数字化深刻影响着各行业招聘、展览、发布会等多种活动&…

2023年新能源汽车行业研究报告

第一章 行业概况 新能源汽车,是指采用新型动力系统,完全或者主要依靠新型能源驱动的汽车,包括纯电动汽车、插电式混合动力汽车、增程式混合动力汽车和燃料电池汽车等。国际上,混合动力汽车(含中混、强混、插电式混动&…

浅谈常用的日志框架

文章目录1.为什么需要日志框架2.常见日志框架2.1.日志框架介绍2.2.市面上的日志框架3.Slf4j使用3.1.如何在系统中使用SLF4j3.2.可能存在的问题4.SpringBoot日志的默认配置5.SpringBoot指定日志文件6.切换日志框架1.为什么需要日志框架 通过日志的方式记录系统运行的过程或错误以…

vscode SSH 保存密码自动登录服务器

先在win local上拿到秘钥,然后再把这秘钥copy 进服务器 1. 创建 RSA 密钥对 第一步是在客户端机器(通常是您的计算机 win 10)上创建密钥对:打开powershell, 输入 ssh-keygen默认情况下ssh-keygen将创建一个 2048 位 RSA 密钥对…

套接字及分层模型(一)

套接字通信 1.内核开发的工程师将网络相关的头文件存储到一个专门目录include/net中,而不是存储到include/linux 2.ISO/OS和TCP/IP参考模型 应用层:网络服务与最终用户的接口; 表示层:数据的表示,安全及压缩&#xf…