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

news/2024/4/25 23:23:56/文章来源:https://blog.csdn.net/Asrty/article/details/129155667

提到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 falsegit config --global gui.encoding utf-8git config --global i18n.commit.encoding utf-8git config --global i18n.logoutputencoding utf-8set 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.luyixian.cn/news_show_72869.aspx

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

相关文章

动作识别、检测、分割、解析相关数据集介绍

文章目录动作识别UCF101(UCF101 Human Actions dataset)Kinetics (Kinetics Human Action Video Dataset)动作检测 / 时序动作定位CharadesActivityNetMulti-THUMOSUCF101-24IKEA ASM动作分割Breakfast (The Breakfast Actions Dataset)GTEA (Georgia Tech Egocentric Activity…

Python base64和hashlib模块

一、base64模块 base64模块提供了在二进制数据和可打印ASCII字符间编解码的功能,包括 RFC3548中定义的Base16, Base32, Base64, Ascii85, Base85等编码。 base64模块属于标准库,无需进行安装,导入即可使用。 base64模块支持两种接口&#xf…

数组还是队列?yocto-queue 源码告诉你

前言 昨天刚学完 omit 的源码,今天趁着学习源码的热度还没结束,来学习一下另一个我之前未接触过的东西 yocto-queue。 yocto-queue 介绍 那么 yocto-queue 是什么呢?它有什么功能呢?查阅资料可得,对于数据比较多的数…

第10天-商品服务(分层领域模型及规格参数编码实现)

1.分层领域模型规约 DO( Data Object): 此对象与数据库表结构一一对应,通过 DAO 层向上传输数据源对象。DTO( Data Transfer Object):数据传输对象, Service 或 Manager 向外传输的…

【Python】PaddleHub图像分类

目录 一、环境配置: 二、问题需求 三、实验内容 1、准备数据集 2、拆分数据集 3、载入数据集 4、生成数据读取器 5、配置策略 6、组建Finetune Task 7、开始Finetune 8、预测 四、总结: 一、环境配置: 线上环境: 飞桨…

JAVA线程入门简介

线程入门简介什么是程序?什么是进程?什么是线程?单线程与多线程并发与并行线程的使用用java查看有多少个cpu创建线程的两种方式继承Thread类,重写run方法实现Runnable接口,重写run方法多线程机制为社么是start?源码解析什么是程序? 是为完…

字符串转换为二进制-课后程序(JAVA基础案例教程-黑马程序员编著-第五章-课后作业)

【案例5-4】 字符串转换为二进制 【案例介绍】 1.任务描述 本例要求编写一个程序,从键盘录入一个字符串,将字符串转换为二进制数。在转换时,将字符串中的每个字符单独转换为一个二进制数,将所有二进制数连接起来进行输出。 案…

win10下 WSL2安装及配置

目录 一. Windows中WSL2(子系统)安装前提条件 二. Windows中WSL2(子系统)安装步骤(默认安装C盘) 选择包安装模式(选择到其他盘安装) 三. Windows中WSL2(子系统)设置默认root用户登…

35-Golang中的方法

Golang中的方法方法的介绍和使用方法的声明和调用方法的调用和传参机制原理方法的声明(定义)方法注意事项和细节讨论方法和函数的区别方法的介绍和使用 在某些情况下,我们需要声明(定义)方法。比如person结构体,除了有一些字段外(年龄,姓名……

Apollo规划模块代码学习(1): 算法架构原理、运行机制一文详解

文章目录 1、Apllo算法框架原理2、Apollo规划模块概述3、规划模块代码框架1、重要数据结构2、运行机制1、Apllo算法框架原理 Apollo开源自动驾驶平台中,高清地图模块提供了每个在线模块都可以访问的高清地图。感知和定位模块提供了必要的动态环境信息,可以在预测模块中进一步…

优思学院:六西格玛管理的优势有哪些?

六西格玛的优势有哪些呢?以下我们来探讨一下。 一・降低企业整体成本 对企业而言,不良品要么被废弃,要么需要重新加工,或者需要在客户现场维修或更换,这些都会增加企业成本。根据美国的统计数据,执行3σ管…

Socket编程 | TCP服务器 之 并发阻塞模型(多进程实现)

TCP服务器IO模型 之 并发阻塞 1. 引言 在 Linux 环境下多进程的应用很多,其中最主要的就是网络/客户服务器。多进程服务器是当客户有请求时,服务器用一个子进程来处理客户请求。父进程继续等待其它客户的请求。这种方法的优点是当客户有请求时,服务器能及时处理客户,特别是…

docker 部署centos7.9并打包成docker

下载centos基础镜像 docker pull centos:centos7 运行镜像 docker run -itd --name centos-test -p 60001:22 --privileged centos:centos7 /usr/sbin/init 进入容器 docker exec -it ebec90068696 /bin/bash 配置容器信息 安装ssh服务和网络必须软件 yum install net-to…

MongoDB在Windows、Linux、Docker环境下的安装

MongoDB在Windows、Linux、Docker环境下的安装DockerDocker安装远程连接WindowsWindows安装服务相关命令压缩包形式安装Mac、Ubuntu、Centos一键安装MacUbuntucentos源码安装使用Atlas免费MongoDB云数据库申请云数据库连接测试Docker Docker安装 拉取镜像 docker pull mongo…

洛谷P5736 【深基7.例2】质数筛 C语言/C++

【深基7.例2】质数筛 题目描述 输入 nnn 个不大于 10510^5105 的正整数。要求全部储存在数组中,去除掉不是质数的数字,依次输出剩余的质数。 输入格式 第一行输入一个正整数 nnn,表示整数个数。 第二行输入 nnn 个正整数 aia_iai​&…

数据结构与算法(二)(Python版)

数据结构与算法(一)(Python版) 文章目录递归动规初识递归:数列求和递归三定律递归的应用:任意进制转换递归的应用:斐波那契数列递归调用的实现分治策略与递归优化问题和贪心策略找零兑换问题贪心…

系列四、多表查询

一、多表关系 项目开发中,在进行数据库表结构设计时,会根据业务需求及业务模块之间的关系,分析并设计表结 构,由于业务之间相互关联,所以各个表结构之间也存在着各种联系,基本上分为三种:一对多…

Sprng依赖注入(二):setter注入是如何工作的?

文章示例环境配置信息jdk版本:1.8开发工具:Intellij iDEA 2020.1springboot:2.3.9.RELEASE前言在Spring依赖注入(一):字段注入的方式是如何工作的?中主要分享了Spring bean依赖注入方式中的字段注入方式及其工作过程&a…

基于Pytorch,从头开始实现Transformer(编码器部分)

Transformer理论部分参考知乎上的这篇文章 Transformer的Attention和Masked Attention部分参考知乎上的这篇文章 Transformer代码实现参考这篇文章,不过这篇文章多头注意力实现部分是错误的,需要注意。 完整代码放到github上了,链接 Trans…

联想小新 Air-14 2019IML电脑 Hackintosh 黑苹果efi引导文件

原文来源于黑果魏叔官网,转载需注明出处。硬件型号驱动情况主板Lenovo LNVNB161216处理器Intel Core i5-10210U / i7-10510U已驱动内存8GB DDR4 2666已驱动硬盘康佳KAK0500B128(128 GB/固志硬盘)已驱动显卡Intel UHD 620Nvidia GeForce MX250(屏蔽)无法驱动声卡Cone…