深度解析如何使用Linux中的git操作
1.如何理解版本控制 →Git&&gitee||github
多版本控制面对善变的甲方
版本控制是一种用于管理文件或代码变更的系统,帮助团队或个人追踪项目的历史记录,并支持多方协作开发。它在软件开发和文档管理中尤为重要,但也适用于其他需要追踪更改的领域。版本控制系统(Version Control System,VCS)能让你查看文件的历史版本,合并多个贡献者的修改,并在出现问题时恢复到早期版本。
git是一个客户端也是一个服务器
git是一个版本控制器
gitee||github是一个基于gitee的网站管理平台
2.Git的历史
Git是一个分布式版本控制系统,由林纳斯·托瓦兹(Linus Torvalds)于2005年创建,用于管理Linux内核的开发。它的历史充满了技术突破和社区协作的故事,以下是Git的起源及其发展过程的简要概述:
背景:版本控制的需求
在Git诞生之前,Linux内核开发团队使用的是一个名为BitKeeper的专有分布式版本控制系统(DVCS)。尽管BitKeeper在技术上表现优异,但其闭源性质对自由软件社区来说始终存在争议。
- 事件导火索:BitKeeper的授权问题 2005年,BitKeeper的免费使用许可政策发生变化,Linux内核开发团队不再能够免费使用这款工具。这一危机促使林纳斯·托瓦兹决定开发一个开源的替代品,用于满足Linux内核开发的需求。
Git的诞生
林纳斯在几天内编写了Git的第一个版本,并于2005年4月7日公布。他的目标是创建一个:
-
快速的系统:能够处理大规模的代码库。
-
简单的设计:易于使用和维护。
-
分布式架构:允许开发者在本地进行版本管理,而无需依赖中心服务器。
-
强大的数据完整性:确保版本控制中的每一项变更都可以被验证。
名称的由来
“Git” 是林纳斯对自己“幽默的”描述——在英国俚语中,“git” 是一个贬义词,意为“愚蠢的人”。林纳斯选择这个名字,部分原因是他自嘲,同时也因为名字短小且易记。
Git的早期发展
-
首次发布(2005年4月7日)
Git的第一个版本是一个极简的实现,主要用作工具链的一部分,目标是实现Linux内核的高效管理。 -
快速迭代
在随后的几个月内,Git迅速完善,加入了许多核心功能,比如分支管理和合并机制。 -
社区贡献
尽管最初是为Linux内核开发设计的,Git很快吸引了其他开源项目的兴趣,成为主流的版本控制工具。
Git的核心特性
以下几个特性奠定了Git在版本控制领域的统治地位:
-
分布式架构:每个开发者都有完整的代码库副本,支持离线开发。
-
强大的分支模型:Git的分支操作快捷高效,方便团队并行开发。
-
数据完整性:所有数据都通过SHA-1哈希加密保存,确保版本历史的安全性。
-
高效性能:特别是在处理大规模代码库时表现突出。
Git的普及
-
GitHub的出现(2008年)
Git的流行离不开GitHub的贡献。2008年,GitHub作为一个基于Git的代码托管平台上线,提供了易于使用的图形界面和协作工具,使Git更加友好。随着GitHub成为开源项目的集中地,Git也被越来越多的开发者采用。 -
企业采用
随着Git的成熟,越来越多的企业开始采用Git作为其主要的版本控制系统,取代了传统的工具如SVN(Subversion)和CVS。
Git的现状和未来
到今天,Git已成为版本控制系统的事实标准,被用于从个人项目到大型企业软件开发的各种场景。其生态系统(如GitHub、GitLab、Bitbucket)也不断扩展,为开发者提供了全面的协作工具。
- 持续改进
Git的开发仍然活跃,不断添加新功能和优化性能,以适应现代软件开发的需求。
重要的里程碑
时间 | 事件 |
---|---|
2005年4月 | Git诞生,用于替代BitKeeper。 |
2005年6月 | Git 2.6发布,首次实现了完整的分支和合并支持。 |
2008年 | GitHub成立,推动了Git在开源社区中的普及。 |
2010年代 | Git成为主流版本控制系统,被各大企业广泛采用。 |
2020年代 | Git仍然是版本控制的领导者,持续影响软件开发的最佳实践。 |
结语
Git的成功不仅仅是技术上的胜利,更是开源文化和协作精神的体现。从解决一个具体的技术问题,到如今统治全球软件开发领域,Git的历史展示了如何通过开放和创新改变世界。
3.Git的操作
我们使用yum install git
进行git工具间的安装操作
然后可以使用命令git version
进行当前git版本的查看操作
我们第一次使用的时候系统会让我们输入username 和我们email
我们先进行gitee仓库的创建,然后点击这个克隆/下载就行了
我们将这个链接进行复制的操作
就是相当于我们拿到了这个仓库的链接
我们现在这Linux中将我们的远端仓库拉取到我们的Linux终端里面
输入命令 git clone [https://gitee.com/caijiuuyk/c-learn.git](https://gitee.com/caijiuuyk/c-learn.git)
将我们gitee中的仓库拉取到本地
然后我们就成功的将我们的远程仓库克隆到本地了
我们进入到这个克隆的仓库
可以看见我们的仓库里面的文件都被克隆下来了
我们可以发现我们的当前目录下存在一个.git文件,这是一个目录,这个被称为隐藏的本地仓库
.git里面包含的是我们所有的历史修改记录
git在提交的时候,只会提交变化的部分
那么现在我们就能在当前的目录下进行代码的新增操作了
我们创建一个code.c的文件,写下一段简单的代码保存并退出
所以我们当前文件夹下就多出了一个源文件了
但是我们的这个文件并没有被添加到.git仓库里面
我们使用命令git add code.c
将我们的文件添加到.git仓库,但是还是没有添加到本地仓库里面
我们仅仅只是将文件添加到我们的暂存区里面
我们现在创建一个code1.c的文件,并且将我们的code.c的内容重定向操作到code1.c里面
[kk@hcss-ecs-28de c-learn]$ touch code1.c
[kk@hcss-ecs-28de c-learn]$ vim code1.c
[kk@hcss-ecs-28de c-learn]$ cat code.c
#include <stdio.h>
int main()
{printf("新年快乐!!!");return 0;
}
[kk@hcss-ecs-28de c-learn]$ cat code.c > code1.c
[kk@hcss-ecs-28de c-learn]$ cat code1.c
#include <stdio.h>
int main()
{printf("新年快乐!!!");return 0;
}
[kk@hcss-ecs-28de c-learn]$
我们再次将这个文件添加我们的暂存区
git add code1.c
这个暂存区可以进行多次的添加操作
这个时候我们.git内部就有一个git仓库了
那么现在我们能直接将我们前几次添加到暂存区的文件推送到我们的git仓库里面
那么有了这个暂存区我们可以在本地进行多次add,然后一次进行提交的操作
我们可以使用git status
查看当前我们的暂存区中的新添加的文件有哪些
[kk@hcss-ecs-28de c-learn]$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: code.c
# new file: code1.c
#
[kk@hcss-ecs-28de c-learn]$
如果我们不想让这个文件提交的话我们可以使用git reset HEAD <filename>
将这个文件在暂存区进行删除操作。将添加的文件移除操作
那么现在我们想一次性将这两个文件提交到我们的本地仓库里面
我们使用命令git commit -m "新增两个源文件"
这里的-m就是我们的日志信息,这个选项我们一定要进行添加的操作
-m后面的介绍一定要清楚
我们可以使用git log
查看我们的提交的历史
但是我们现在需要将我们本地的仓库和远端的仓库进行同步的操作,那么我们该怎么做呢?
那么这里的第三步就是git push
了,提交/同步
我们需要记住我们的账号密码才能在Linux上面进行代码的提交操作
如果我们将本地的这个gitee的仓库删除了
我们想要查看我们历史提交的文件
我们直接再次将这个仓库克隆到本地就行了
因为我们的git的版本管理只进行管理源文件,所以像obj、exe后缀的文件我们是不接收的
但是我们怎么将这些文件进行忽略呢?
我们的git仓库里面存在一个隐藏文件gitignore
可以忽略掉非源文件
我们直接将obj类的文件添加到非上传的名单里面
我们添加两个.c文件
这里我们使用git status
可以查看到系统检测到我们的的.gitignore
文件是被修改了的
以及新增了一个test2.c文件
没有我们上面创建的obj文件,说明已经被忽略了
我们按照正常流程进行推送到gitee的操作
我们只会将我们的修改的gitignore
和我们新增的源文件进行上传
其他的文件是会被忽略的
gitignore
里面保存的是我们需要忽略的特定后缀的文件列表
下面是我们在Linux进行源文件的上传提交操作
在Windows里面进行git的操作
我们确保我们的Windows里面装了gitee
安装的地址:https://git-scm.com/downloads/win
我们直接在对应的命令行进行源代码文件的push就行了
我们如果在Windows版本下进行代码的更改操作的话,我们在Linux再进行更改一次的话这个我们是否能再次进行更改操作呢?
因为我们的这个代码文件冲突了,我们Windows里面已经对这个文件进行修改了
我们在Linux里面再次进行修改的话是不可行的
那么我们如何进行解决操作呢?
输入命令git pull
将远端和本地进行同步操作
直接将我们在Windows上面进行的修改同步到了我们Linux这里了
远端仓库相比较任何人都是最新的
为什么会出现冲突?提醒本地用户,你要和远端仓库进行同步的操作
相关文章:
深度解析如何使用Linux中的git操作
1.如何理解版本控制 →Git&&gitee||github 多版本控制面对善变的甲方 版本控制是一种用于管理文件或代码变更的系统,帮助团队或个人追踪项目的历史记录,并支持多方协作开发。它在软件开发和文档管理中尤为重要,但也适用于其他需要追…...
青龙面板脚本开发指南:高效自动化任务的实现
青龙面板脚本开发指南:高效自动化任务的实现 青龙面板(Qinglong Panel)是一款强大的任务管理平台,支持多种语言的脚本开发和执行。通过在青龙面板中编写和管理脚本,用户可以轻松实现自动化任务,提高工作效…...
视频编辑最新SOTA!港中文Adobe等发布统一视频生成传播框架——GenProp
文章链接:https://arxiv.org/pdf/2412.19761 项目链接:https://genprop.github.io 亮点直击 定义了一个新的生成视频传播问题,目标是利用 I2V 模型的生成能力,将视频第一帧的各种变化传播到整个视频中。 精心设计了模型 GenProp&…...
ue5动画重定向,一键重定向。ue4小白人替换成ue5
这就是我们下载的 初学者动画内容包 点击设置选中列 绿色的是动画 黄色的关卡 蓝色是蓝图 ctrla 全选 ctrl鼠标左键 选中所有动画 重定向动画资产 不要选错,只要绿色 选择目标网格体 选择所有的绿色 动画 导出动画 添加前缀ycn 导出 一定要提前新建好存放的…...
C++ 枚举类型
【语法解析】 ● C 枚举类型 在C中,枚举(enumeration)类型是一种简单的数据类型,用于定义在程序中使用的常量。(1)枚举类型的定义格式:enum <类型名> {<枚举常量表>};(2…...
通过Apache、Nginx限制直接访问public下的静态文件
一、Apache 在public目录下的.htaccess文件中添加如下规则,来拒绝除了指定文件类型之外的所有请求 <FilesMatch "\.(?!(jpg|jpeg|png|gif|css|js|ico)$)[^.]$">Order Allow,DenyDeny from all </FilesMatch> 上述配置表示仅允许访问.jpg …...
Spring Boot3 配合ProxySQL实现对 MySQL 主从同步的读写分离和负载均衡
将 ProxySQL 配合 Spring Boot 使用,主要的目的是在 Spring Boot 应用程序中实现对 MySQL 主从同步的读写分离和负载均衡。这样,你可以利用 ProxySQL 自动将写操作路由到主库,而将读操作路由到从库。 1. 准备工作 确保你的 MySQL 主从同步环…...
ubuntu20下编译linux1.0 (part1)
author: hjjdebug date: 2025年 01月 09日 星期四 15:56:15 CST description: ubuntu20下编译linux1.0 (part1) 该博客记录了新gcc编译旧代码可能碰到的问题和解决办法, 可留作参考 操作环境: ubuntu20 $ gcc --version gcc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0 $ as --vers…...
【AI日记】25.01.10
【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】【AI日记】【读书与思考】 AI kaggle 比赛:Forecasting Sticker Sales 读书 书名:国家为什么会失败阅读原因:2024 年诺贝尔经济学奖得主的力作未删减版:https://book.dou…...
04_Redis数据类型-String字符串
1.Redis数据类型介绍 Redis是一种Key-Value类型缓存型数据库,Redis为了存储不同类型的数据,Value支持多种数据类型,Redis为我们提供了常用的9种数据类型。包括5种基本类型:String(字符串)、Hash(哈希)、List(列表),Set(集合)及zset(Sorted Set有序集合);和4种…...
mysql之基本select语句 运算符 排序分页
1.SQL的分类 DDL:数据定义语言. CREATE ALTER DROP RENAME TRUNCATE DML: 数据操作语言. INSERT DELETE UPDATE SELECT 重中之重 DCL: 数据控制语言. COMMIT ROLLBACK SAVEPOINT GRANT REVOKE 2.SQL语言的规则与规范 1.基本规则 SQL可以在一行或多行,为了提高可…...
springboot整合admin
1. 添加依赖 首先,在你的admin服务端pom.xml文件中添加Spring Boot Admin的依赖: <dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-starter-server</artifactId><version>2.5.4<…...
springboot整合gateway
1. 添加依赖 首先,在你的pom.xml文件中添加Spring Cloud Gateway的依赖: <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId> </dependency> 如果…...
iOS实际开发中使用Alamofire实现多文件上传(以个人相册为例)
引言 在移动应用中,图片上传是一个常见的功能,尤其是在个人中心或社交平台场景中,用户经常需要上传图片到服务器,用以展示个人风采或记录美好瞬间。然而,实现多图片上传的过程中,如何设计高效的上传逻辑并…...
PyCharm 的安装与使用(Window)
1 PyCharm 简介 PyCharm 是一款由 JetBrains 公司开发的专门用于 Python 语言开发的集成开发环境(IDE)。以下是其相关介绍: 1.1 特点与功能 智能代码编辑:提供高度智能化的代码编辑器,支持语法高亮、自动补全、代码重…...
媒体资源生产转码过程
音视频基础 1. 音频基础原理 1.1 声音的基本概念 声波: 声音是通过空气或其他介质传播的机械波。声波的特性包括频率(Hz)、振幅(dB)和波形。采样率 (Sampling Rate): 每秒对声音信号进行采样的次数,单位为赫兹&…...
WPF控件Grid的布局和C1FlexGrid的多选应用
使用 Grid.Column和Grid.Row布局,将多个C1FlexGrid布局其中,使用各种事件来达到所需效果,点击复选框可以加载数据到列表,移除列表的数据,自动取消复选框等 移除复选框的要注意!!!&am…...
Postman配置环境变量
🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 Postman是一套比较方便的接口测试工具,但我们在使用过程中,可能会出现创建了API请求,但API的URL会随着服务器IP地址的变化而改…...
import语句详解
在 Java 中,import 语句用于引入其他包中的类、接口或静态成员,以便在当前源文件中直接使用它们,而不需要写完整的类名(包括包名)。以下是 import 语句的详细解释和使用方法: 一、import语句的基本概念 定…...
数据结构与算法之二叉树: LeetCode 199. 二叉树的右视图 (Ts版)
二叉树的右视图 https://leetcode.cn/problems/binary-tree-right-side-view/ 描述 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1 输入:root [1,2,3,nu…...
CentOS7修改Docker默认存储路径
当你使用Docker时,Docker的默认配置是将镜像、容器和卷存储在系统/var/lib/docker/目录下,如果docker镜像安装的太多会导致磁盘不够,你可以尝试以下方法来释放空间: 清理无用的镜像和容器:使用docker命令删除不再使用…...
宝塔面板使用 GoAccess Web 日志分析教程
宝塔面板是一个简单方便的服务器运维面板,但其网站统计功能是收费的。而 GoAccess 是一个用 C 编写的免费开源 Web日志分析器,本文将介绍如何在宝塔面板中开启 GoAccess Web 日志分析功能。 内容索引 下载安装 GoAccess在宝塔面板中添加日志切割的计划任务将 Web 日志输出到…...
【FPGA】时序约束与分析
设计约束 设计约束所处环节: 约束输入 分析实现结果 设计优化 设计约束分类: 物理约束:I/O接口约束(例如引脚分配、电平标准设定等物理属性的约束)、布局约束、布线约束以及配置约束 时序约束:设计FP…...
c++入门之 命名空间与输入输出
1、命名空间 1.1使用命名空间的原因 先看一个例子: #include <iostream>int round 0;int main() {printf("%d", round);return 0; }请问,这个程序能跑起来吗? 答案是否定的 原因是,当我们想创建一个全局变量 …...
【zotero】解决无法参考文献交叉跳转、相关参考文献插件推荐
无法跳转 参考大佬文章的方法: https://blog.csdn.net/air__Heaven/article/details/137470687 但是有可能有时候又跳不了了,可以多多执行一下 zotero-citation插件 github地址 : https://github.com/MuiseDestiny/zotero-citation cl ht…...
《深度学习模型在鸿蒙分布式框架下的跨设备高效之旅》
在人工智能领域,深度学习模型的训练与推理通常需要强大的计算资源和大量的数据支持。而鸿蒙系统的分布式框架为解决这一问题提供了新的思路和方法,使得深度学习模型能够在多个设备之间实现高效的训练与推理。 鸿蒙分布式框架概述 鸿蒙系统是一款面向万…...
不同方式获取音频时长 - python 实现
DataBall 助力快速掌握数据集的信息和使用方式,会员享有 百种数据集,持续增加中。 需要更多数据资源和技术解决方案,知识星球: “DataBall - X 数据球(free)” -------------------------------------------------------------…...
用python实现烟花代码,完整代码拿走不谢
有时候用python实现一些有趣的代码,既有趣,又能提升知识 使用Python实现动态烟花代码 效果如下: 不废话,直接上代码: import pygame from random import randint, uniform, choice import mathvector pygame.math…...
[OPEN SQL] 限定选择行数
本次操作使用的数据库表为SCUSTOM,其字段内容如下所示 航班用户(SCUSTOM) 该数据库表中的部分值如下所示 指定查询多少行数据,我们可以使用语法UP TO n ROWS来实现对数据前n项的查询 语法格式 SELECT * FROM <dbtab> UP TO n ROWS 参数说明 db…...
【入门级】计算机网络学习
网络安全:前端开发者必知:Web安全威胁——XSS与CSRF攻击及其防范-CSDN博客 三次握手四次挥手:前端网络—三次握手四次挥手_前端三次握手-CSDN博客 http协议和https协议的区别:前端网络—http协议和https协议的区别-CSDN博客 网…...
Redis 安装与 Spring Boot 集成指南
安装 Redis 和将其与 Spring Boot 应用集成是构建高效缓存解决方案的常见步骤。以下是详细的指南,帮助你在本地环境中安装 Redis,并在 Spring Boot 项目中配置和使用它。 1. 安装 Redis Windows 环境 Redis 官方并不直接支持 Windows,但你…...
基于 Python 和 OpenCV 的人脸识别上课考勤管理系统
博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…...
【c/c++】 windows下调用putty
windows和linux系统存在差异,同样的数据在两边的终端行为都不一样,就很头疼。 例如:换行符,win下是\r\n 而linux下是\n 又或者win下使用vi 好在找到了解决方案 1、通过第三方程序GoTTY(支持windows和Linux&#x…...
JVM常见面试题
1.内存泄漏与内存溢出的区别 内存泄漏是指不再使用的对象无法得到及时的回收,持续占用内存空间,从而导致系统内存逐渐减少,系统性能下降,最终可能引发内存溢出内存溢出是指程序在运行时需要分配内存,但 JVM 没有足够的内存可以分配(超出可用内存大小),最终导致内存分配…...
手机租赁系统开发解决方案与市场趋势分析
内容概要 手机租赁系统开发正如一场技术与商业的双重舞会,双方时而相互辉映,时而却也是一场较量。在这片快速变幻的市场中,了解当前的技术实现与挑战尤为重要。例如,系统架构的选择、数据安全性以及用户体验设计都可能成为企业发…...
基于Qt的OFD阅读器开发原理与实践
摘要 本文详细探讨了基于Qt开发OFD阅读器的原理与实践。通过解析OFD文件格式、构建文档结构、实现页面渲染、处理用户交互以及进行性能优化,本文展示了如何使用Qt框架开发一个功能强大、性能优异的OFD阅读器。文章还提供了示例代码和未来发展方向,为开发…...
Redis实现高效的负载均衡算法
1. Redis存储设计 我们需要在 Redis 中存储以下信息: 配置列表(List<Config>):存储所有配置项。总权重:存储所有配置的总权重。当前轮询状态:存储当前的轮询状态(如当前随机值或索引&am…...
spring依赖注入
一、 注入方式 1. 构造器注入 构造器注入通过构造方法来注入依赖的对象。当Spring容器创建Bean时,会通过构造器来传递依赖对象。这种方式是最推荐的方式,因为它可以确保依赖对象在创建时已经完全注入。 示例: Component public class Car…...
流浪猫流浪狗领养PHP网站源码
源码介绍 流浪猫流浪狗领养PHP网站源码,适合做猫狗宠物类的发信息发布。当然其他信息发布也是可以的。 导入数据库,修改数据库配置/application/database.php 设置TP伪静态,设置运行目录, 后台:/abcd.php/dashboard?…...
ffmpeg 编译遇到的坑
makeinfo: error parsing ./doc/t2h.pm: Undefined subroutine &Texinfo::Config::set_from_init_file called at ./doc/t2h.pm line 24. 编译选项添加: --disable-htmlpages...
灵活运用事务回滚,快捷处理多张数据表格
各位编程宝子们(尤其是对MySQL了解不多的宝子们)在使用关系表处理时,有时候会希望简单一次性解决多张表的数据处理,但又有时候无从下手。其实有时候掌握数据的事务和回滚便可以简单解决这些事情,接下来我将以一个学生信…...
MyBatis 性能优化
1. 引言 1.1 什么是 MyBatis? MyBatis 是一款流行的 Java 持久层框架,能够将 Java 对象与 SQL 数据库映射起来。与传统的 JDBC 不同,MyBatis 提供了灵活的 SQL 映射功能,使开发者可以专注于业务逻辑,而无需编写冗长的…...
【python基础】python内置函数 zip用法介绍
zip() 是 Python 中非常有用的内建函数,能够将多个可迭代对象(如列表、元组、字符串等)打包成一个迭代器,它将对应位置的元素组合成元组,并返回一个由这些元组组成的迭代器。通常用于并行处理多个可迭代对象。 1. 基本…...
Unity Android AAB包GooglePlay上线备忘
aab GooglePlay要求新上线的App必须使用aab格式提交,在Unity Build Settings中勾选Build App Bundle 选项即可;或者在代码中设置: EditorUserBuildSettings.buildAppBundle true; 安装测试 https://developer.android.com/tools/bundlet…...
基于springboot的课程作业管理系统源码(springboot+vue+mysql)
风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的课程作业管理系统。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 可以管理首页、个人中心…...
JVM生产环境常用参数配置及调优建议
一、生产常用参数配置 JAVA_OPTS="-server -Xms4G -Xmx4 -Xmn2G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:InitiatingHeapOccupancyPercent=45 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=8 -XX:G1HeapRegionSize=16m -XX:MaxGCCount=10 -XX:MetaspaceSize=256m -XX:…...
vue 实现打包并同时上传至服务器端
将 publish_script 及以下文件 upload.server.js 添加到 主文件下,与 src 同级别 具体操作步骤: 1、安装 npm install scp2 2、将下面两条命令加入至 package.json 的 scripts 中 "upload": "node publish_script/upload.server.js&q…...
深入探索AI核心模型:CNN、RNN、GAN与Transformer
在人工智能的飞速发展中,众多深度学习模型和算法不断涌现,推动了许多领域的进步。特别是在图像识别、自然语言处理、生成建模等方向,AI模型的应用越来越广泛。本文将介绍几种最常用的AI模型,包括卷积神经网络(CNN&…...
【Elasticsearch】配置分片分配到指定节点
配置分片分配到指定节点 参考文章:https://www.elastic.co/guide/en/elasticsearch/reference/current/shard-allocation-filtering.html 两种方式:根据节点属性分配和根据节点名称分配。 测试环境 tar xvf elasticsearch-7.17.25-linux-x86_64.tar.gz…...
【贵州省】乡镇界arcgis格式shp数据乡镇名称和编码内容下载测评
shp数据字段乡镇名称和编码,坐标是wgs84,数据为SHP矢量格式,下载下来直接加载进ArcMap即可使用 下载地址:https://download.csdn.net/download/zhongguonanren99/14928126...