辽宁平台网站建设哪里好/国内网站排名
版本控制
版本迭代,
版本控制( Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。实现跨区域多人协同开发
追踪和记载一个或者多个文件的历史记录组织和保护你的源代码和文档
统计工作量
并行开发、提高开发效率跟踪记录整个软件的开发过程
减轻开发人员的负担,节省时间,同时降低人为错误没有进行版本控制或者版本控制本身缺乏正确的流程管理,在软件开发过程中将会引入很多问题,如软件代码的一致性、软件内容的冗余、软件过程的事物性、软件开发过程中的并发性、软件源代码的安全性,以及软件的整合等问题。
主流的版本控制软件:
我们学习的东西,一定是当下最流行的
Git
SVN( Subversion )
cvs ( concurrent Versions System )vss ( Micorosoft Visual SourceSafe )
TFS ( Team Foundation Server )
Visual Studio Online
1、本地版本控制
记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,适合个人用,如RCS。
2、集中版本控制
所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改
所有的版本数据都存在服务器上,用户的本地只有自己以前所同步的版本,如果不连网的话,用户就看不到历史版本,也无法切换版本验证问题,或在不同分支工作。而且,所有数据都保存在单一的服务器上,有很大的风险这个服务器会损坏,这样就会丢失所有的数据,当然可以定期备份。代表产品:SVN、CVS、vSs
代码全在中央服务器上,电脑必须联网才能工作
3、分布式版本控制Git
所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器或其他用户那里。由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据,但这增加了本地存储空间的占用。
每个用户都拥有全部的代码。所以有的公司出于隐私还是用svn。
Git和SVN的区别
SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。
Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。协同的方法是这样的∶比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。Git可以直接看到更新了哪些代码和文件
Git是目前世界上最先进的分布式版本控制系统。
Git环境配置
卸载
先检查环境变量path中有没有和git相关的环境变量,如C:\Program Files\Git\cmd,给删除掉。
然后打开控制面板,找到git,然后一键卸载掉。
下载安装
打开[git官网Git - Downloading Package,下载git对应操作系统的版本win64位。
所有东西下载慢的话就可以去找镜像!
淘宝镜像上下稳定版的64为的:下载.exe文件
CNPM Binaries Mirror
安装的时候:无脑下一步即可。可选安装目录,可选其默认打开的文本编辑器。
安装成功后就会发现:win中,多了git bash(和linux语法相似)和git gui(图形界面不建议使用)和git cmd(和windows语法相似)、
然后右键多了git bash here 和git gui here,环境变量中多了git的配置。
基本的linux命令学习
使用git bash需使用到linux命令:
基本的Linux命令学习
1 ) 、cd:改变目录。
2 ) 、cd ..回退到上一个目录,直接cd进入默认目录3 ) 、pwd:显示当前所在的目录路径。
4 ) 、ls(Il):都是列出当前目录中的所有文件,只不过ll(两个Il列出的内容更为详细。5 ) 、touch:新建一个文件如touch index.js就会在当前目录下新建一个index.js文件。
6 ) 、rm:删除一个文件, rm index.js 就会把index.js文件删除。
7 ) 、mkdir:新建一个目录,就是新建一个文件夹。-p允许多级目录
8 ) . rm :递归删除一个文件夹, rm -r src递归删除src目录 rm -rf 不用确认直接递归移除,千万别rm -rf /这样会递归删除所有东西格式化系统的,会删除Linux根目录下的所有文件,直接导致服务器瘫痪,删库犯法。
9 ) 、mv移动文件, mv index.html src index.html是我们要移动的文件, src是目标文件夹,和目标文件夹在同一目录下。
10 ) 、reset重新初始化终端/清屏。11 ) . clear清屏。
12 ) 、 history查看命令历史。13 ) . help 帮助。
14 ) .exit退出。15 )、#表示注释
16)、ps查看进程 ps -ef|grep redis kill -9 pid关闭进程
git的必要配置
git config -l 当前项目下关于git的所有配置,一般就是本机配置
kongdeyi@DESKTOP-TJP7C4E MINGW64 ~/Desktop/gitcode
$ git config -l
diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
http.sslbackend=openssl
http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
core.autocrlf=true
core.fscache=true
core.symlinks=false
pull.rebase=false
credential.helper=manager
credential.https://dev.azure.com.usehttppath=true
init.defaultbranch=master
user.name=kongdeyi
user.email=2138991631@qq.com
http.sslverify=false
git config --system --list 查看系统配置,就没有了下面的用户配置了
kongdeyi@DESKTOP-TJP7C4E MINGW64 ~/Desktop/gitcode
$ git config --system --list
diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
http.sslbackend=openssl
http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
core.autocrlf=true
core.fscache=true
core.symlinks=false
pull.rebase=false
credential.helper=manager
credential.https://dev.azure.com.usehttppath=true
init.defaultbranch=master
git config --global --list本地配置,用户自己配的,下面的用户名和emial是必须配置的。
kongdeyi@DESKTOP-TJP7C4E MINGW64 ~/Desktop/gitcode
$ git config --global --list
user.name=kongdeyi
user.email=2138991631@qq.com
http.sslverify=false
Git相关的配置文件:
1 ) 、C:\Program Files\Git\etc\gitconfig : Git安装目录下的gitconfig--system系统级
2 )、C:\Users\kongdeyi\.gitconfig只适用于当前登录用户的配置--global全局这里可以直接编辑配置文件,通过命令设置后会响应到这里。
设置用户名与邮箱
(用户标识,必要) 不设置提交不上项目
kongdeyi@DESKTOP-TJP7C4E MINGW64 ~/Desktop/gitcode
$ git config --global user.name "kongdeyi"kongdeyi@DESKTOP-TJP7C4E MINGW64 ~/Desktop/gitcode
$ git config --global user.email "3284514536@qq.com"
git的工作原理
工作区域
Git本地有三个工作区域∶工作目录(Working Directory )、暂存区(Stage/Index)、资源库(Repository或Git Directory)。如果在加上远程的git仓库(Remote Directory)就可以分为四个工作区域。文件在这四个区域之间的转换关系如下︰
Workspace :工作区,就是你平时存放项目代码的地方,如idea的项目的目录
Index / Stage:暂存区,用于临时存放你的改动,事实上它只是一个文件,index文件,保存即将提交到文件列表信息,实际上看不到
Repository :仓库区(或本地仓库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本。git项目的隐藏文件夹.git文件夹中有个HEAD文件,打开如下,里面ref执行主分支master:。一般不会在主分支里面做。ref: refs/heads/master
Remote:远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换
git的工作流程一般是这样的:
1、在工作目录中添加、修改文件;如修改UserMapper.xml
2、将需要进行版本管理的文件放入暂存区域; git add . add点代表将所有的文件放入暂存区
3、将暂存区域的文件提交到git仓库。git commit4、一般还要推到远程仓库。
git项目创建及克隆
工作目录(WorkSpace)一般就是你希望Git帮助你管理的文件夹,可以是你项目的目录,也可以是一个空目录,建议不要有中文。
日常使用只要记住下图6个命令∶
创建本地仓库
创建本地仓库的方法有两种:一种是创建全新的仓库,另一种是克隆远程仓库。
创建全新的仓库
初始化git:
创建一个目录C:\Users\kongdeyi\Desktop\gitcode目录,进入目录右键git bash here ,然后git init,该目录下就会创建一个.git的文件夹
克隆远程仓库
无论是到github还是gitee里面的某个仓库都会有一个clone的地,可拷贝他的https的clone的地址。
我们C:\Users\kongdeyi\Desktop\gitcode目录,进入目录右键git bash here ,然后git clone https://github.com/2138991631qq/PharmacySystem.git 。下载下后,就会在该文件夹中多了一个PharmacySystem文件夹,点进去有.git目录个工作文件,就是克隆了地址仓库中的内容。使用github速度慢的可下一个fastgithub如下:
FastGithub 下载_阳光明媚UPUP的博客-CSDN博客
git的基本操作命令
git文件操作
文件4种状态
- 版本控制就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态,不然可能会提交了现在还不想提交的文件,或者要提交的文件没提交上。
- Untracked:刚新建的文件是这个状态,未跟踪,此文件在文件夹中,但并没有加入到git库,不参与版本控制.通过git add状态变为staged
- Unmodify:上一步git add后台,文件已经入库,未修改,即版本库中的文件快照内容与文件夹中完全一致.这种类型的文件有两种去处,如果它被修改,而变为Modified .如果使用git rm移出版本库,则成为untracked文件
- Modified:文件已修改,仅仅是修改,并没有进行其他的操作.这个文件也有两个去处,通过git add可进入暂存staged状态,使用git checkout则丢弃修改过,返回到unmodify状态,这个 git checkout即从库中取出文件,覆盖当前修改
- Staged:暂存状态.执行git commit则将修改同步到库中,这时库中的文件和本地文件又变为一致,文件为unmodify状态.执行git reset HEAD filename取消暂存,文件状态为Modified
操作命令
C:\Users\kongdeyi\Desktop\gitcode目录下,刚刚执行了git init,创建了本地仓库,删除除.git文件夹外的东西,我们本目录创建一个a.txt文件夹,也可touch的方式创建,然后执行git status给出了a.txt未放入库中的提示,我们git add . 然后git status ,给出可以提交的提示,然后git commit -m "消息" 提交后。再git status,就提示没有要提交的内容了。
kongdeyi@DESKTOP-TJP7C4E MINGW64 ~/Desktop/gitcode (master)
$ git status
On branch masterNo commits yetUntracked files:(use "git add <file>..." to include in what will be committed)a.txtnothing added to commit but untracked files present (use "git add" to track)kongdeyi@DESKTOP-TJP7C4E MINGW64 ~/Desktop/gitcode (master)
$ git add .kongdeyi@DESKTOP-TJP7C4E MINGW64 ~/Desktop/gitcode (master)
$ git status
On branch masterNo commits yetChanges to be committed:(use "git rm --cached <file>..." to unstage)new file: a.txtkongdeyi@DESKTOP-TJP7C4E MINGW64 ~/Desktop/gitcode (master)
$ git commit -m "提交a.txt文件"
[master (root-commit) e45954b] 提交a.txt文件1 file changed, 0 insertions(+), 0 deletions(-)create mode 100644 a.txtkongdeyi@DESKTOP-TJP7C4E MINGW64 ~/Desktop/gitcode (master)
$ git status
On branch master
nothing to commit, working tree clean
cd [文件夹]
git branch
git branch dev1 //创建新分支
git switch dev1 //切换到dev1分支
git push 提交到当前分支
git push origin [分支名] 提交到指定分支
忽略文件
有些时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等在主目录下建立".gitignore"文件,此文件有如下规则∶
1.忽略文件中的空行或以井号(# )开始的行将会被忽略。
2可以使用Linux通配符。例如∶星号(*)代表任意多个字符,问号(﹖)代表一个字符,方括号([abc])代表可选字符范围,大括号( {string1,string2,.…})代表可选的字符串等。
3.如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略。
4.如果名称的最前面是一个路径分隔符(/ ),表示要忽略的文件在此目录下,而子目录中的文件不忽略。
5.如果名称的最后面是一个路径分隔符(/),表示要忽略的是此目录下该名称的子目录,而非文件(默认文件或目录都忽略)。
#为注释
*.txt#忽略所有.txt结尾的文件,这样的话上传就不会被选中!
!lib.txt #但lib.txt除外
/temp #仅忽略项目根目录下的TODO文件,不包括其它目录temp
build/ #忽略build/目录下的所有文件
doc/*.txt #会忽略 doc/notes.txt但不包括doc /server/arch.txt
idea中项目的.gitignore可用下面这套配置
*.class
*.log
*.lock
# Package Files #
*.jar
*.war
*.ear
target/#idea
.idea/
*.iml*velocity.log*### STS ###
.apt_generated
.factorypath
.springBeans###Tntel1iDeA“
*.iml
*.ipr
*.iws
.idea
.classpath
.project
.settings/
bin/*.1og
tmp/#rebel
*rebel.xml*
码云的注册和使用
github是有墙的,比较慢,在国内的话,我们一般使用gitee,公司中有时候会搭建自己的gitlab服务器
Gitee - 企业级 DevOps 研发效能平台
1、注册,登录,创建仓库,设置仓库为私有或开源,从github上导入仓库、修改个人信息等这个操作先做一做。
配置SSH公钥及创建远程仓库
2、设置本机绑定SSH公钥,实现免密码登录!(免密码登录,这一步挺重要的,码云是远程仓库,我们是平时工作在本地仓库! )
#进入C: \users\Administrator\.ssh目录
#生成公钥
ssh-keygen
操作如下:
点击账号设置,里面有个ssh公钥。
我们进到电脑用户目录下,有个.ssh文件夹:
C:\Users\kongdeyi\.ssh
该目录下右键git bash here,然后执行ssh-keygen,也可执行ssh-keygen -t rsa,-t为加密, rsa为使用官方推荐的rsa加密算法进行加密。然后一路回车下去。
kongdeyi@DESKTOP-TJP7C4E MINGW64 ~/.ssh
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/kongdeyi/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/kongdeyi/.ssh/id_rsa
Your public key has been saved in /c/Users/kongdeyi/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:DmCfOW7dtgzH5Tn+34G65qZkGJQurFLSRKmTVrK9ruw kongdeyi@DESKTOP-TJP7C4E
The key's randomart image is:
+---[RSA 3072]----+
| .. |
| ..o . |
| B.o o |
| *oo.ooo |
|...o.o*oS . |
| o....=oo o .. |
| ... o.+o= +. . |
|. .. . o= =.. o|
|.E. .B+o...o|
+----[SHA256]-----+
生成完后,C:\Users\kongdeyi\.ssh该目录下就会多了id_rsa文件和id_rsa.pub文件。
3、将公钥信息public key添加到码云账户中即可!
我们打开C:\Users\kongdeyi\.ssh目录下的id_rsa.pub文件,这个pub是公钥,打开后复制里面的公钥到gitee上用户设置中的ssh中的公钥文本框中,点击下面的确定输入验证的用户密码即可添加成功。
4、使用码云创建一个自己的仓库!
点击导航栏上方的加号即可新建一个仓库
5、克隆仓库到本地
点进某个仓库,点击复制https地址,然后在git bash中使用git clone即可:
私有仓库多人协调开发
点击管理->仓库成员管理->开发者,邀请后审核通过即可一起开发了。
使用Idea集成Git
1、远程仓库克隆下来的项目想使用直接全部复制到一个新项目中:
idea创建一个project,选springboot的项目,名叫git-xuexi,放到上面的gitcode目录下吧。
本gitcode目录下还有我们刚刚拉取的PharmacySystem仓库项目的文件夹。
我们直接将PharmacySystem文件夹中的内容全部选中拷贝到git-xuexi目录中,也就是新创建的springboot项目中,然后回到idea中,发现左侧项目文件颜色变成红色代表被git选中的状态,黑色的代表被git忽略的文件或文件夹,绿色代表提交了的文件或文件夹。
2、可点击左侧栏的commit提交相应文件,当我们修改了某个文件,该文件就变蓝色了,我们可右击该文件,然后git add,再次右击该文件git commit即可提交。也可在下方的terminal中输入git add . 和git commit -m "提交"来提交到本地库。
3、在下方的git按钮中可看到提交记录等信息。
4、可右击项目名位置,git->repository->push,然后选择文件和分支提交远程仓库。
也可在下方ternimal中git push的方提交:
git push 提交到当前分支
git push origin [分支名] 提交到指定分支
Git的分支
不同的分支,不同的作用
分支在GIT中相对较难,分支就是科幻电影里面的平行宇宙,如果两个平行宇宙互不干扰,那对现在的你也没啥影响。不过,在某个时间点,两个平行宇宙合并了,我们就需要处理一些问题了!
git分支中常用指令︰
# 列出所有本地分支
git branch
#列出所有远程分支git branch -r
#新建一个分支,但依然停留在当前分支
git branch [branch-name]
git switch dev1 //切换到dev1分支
#新建一个分支,并切换到该分支
git checkout -b [branch]
git push 提交到当前分支
git push origin [分支名] 提交到指定分支
# 合并指定分支到当前分支git merge [branch]
#删除分支
git branch -d [branch-name]
#删除远程分支
git push origin --delete [branch-name]git branch -dr [remote/branch]
多个分支如果并行执行,就会导致我们代码不冲突,也就是同时存在多个版本!
但如果出现两个人修改了同一个分支的同一个文件。
web-api -A( Restful.xx() )
web-admin -B会调用A(修改了A的代码!)web-app -C会调用B和A的代码
如果了冲突了就需要协商即可!
如果同一个文件在合并分支时都被修改了则会引起冲突∶解决的办法是我们可以修改冲突文件后重新提交Ⅰ选择要保留他的代码还是你的代码!
master主分支应该非常稳定,用来发布新版本,一般情况下不允许在上面工作,工作一般情况下在新建的dev分支上工作,工作完后,比如上要发布,或者说dev分支代码稳定后可以合并到主分支master上来。
idea中右击项目名git->repository-branches也可checkout或merge合并
注意:
master主分支应该非常稳定,用来发布新版本,一般情况下不允许在上面工作,工作一般情况下在新建的dev分支上工作,工作完后,比如上要发布,或者说dev分支代码稳定后可以合并到主分支master上来。
git后续说明
码云上最下方导航栏如https://gitee.com/kongdeyi123/官网上有给git大全:Git 大全 - Gitee.com
里面有各种git资料和git命令大全
相关文章:

Git的基本使用笔记——狂神说
版本控制 版本迭代, 版本控制( Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。 实现跨区域多人协同开发 追踪和记载一个或者多个文件的…...

【小程序】外部二维码扫码打开微信小程序并跳转到指定页面
外部二维码扫码打开微信小程序并跳转到指定页面 您需要使用微信提供的跳转链接和相关参数。以下是实现的步骤: 生成跳转链接:使用以下链接格式生成跳转链接,其中APPID是您的小程序的 AppID,PATH是您要跳转的页面路径,…...

bazel安装
安装 首先安装一下 Bazel 环境。参考 https://bazel.build/install。我是在 Ubuntu 上实验的,所以安装过程参考的是:https://bazel.build/install/ubuntu,有很多种安装方法,我选择的是使用二进制安装程序。这个具体参考的又是 ht…...

Typescript的class语法[类]的操作和应用
TypeScript 是一种面向对象的编程语言,它扩展了 JavaScript,为其添加了类型系统和其他一些特性。TypeScript 的 class 语法可以让开发者更加方便地使用面向对象的编程方式。本文将详细介绍 TypeScript 的 class 语法的操作和应用,并提供代码案…...

OPENCV实现暴力特征匹配
# -*- coding:utf-8 -*- """ 作者:794919561 日期:2023/9/1 """ import cv2 import numpy as np# 读...

揭秘亚马逊Amazon测评,掌握细节和技巧,提升产品销量和评论数量
亚马逊是全球最大的跨境电商平台,拥有全球65个国家的几十个网站。对于跨境卖家来说,亚马逊是最值得选择的平台之一。 亚马逊的八大站点分别是美国、加拿大、墨西哥、欧洲、澳大利亚、日本、中东和巴西。 美国站点是全球最大的零售市场,拥有…...

Linux线程互斥
目录 一、线程不安全 1.线程不安全现象 2.线程不安全程序的特质 3.线程不安全程序的原因 二、线程互斥 1.基本概念 2.锁 (1)认识锁 (2)互斥锁的使用 (3)代码的改造 3.锁的本质 (1&a…...

【仿写spring之ioc篇】三、检查是否实现了Aware接口并且执行对应的方法
Aware接口 Aware接口中只是设置了对应的set方法,目前只定义了三个Aware 以BeanNameAware为例 package com.ez4sterben.spring.ioc.factory.aware;/*** bean名字清楚** author ez4sterben* date 2023/08/31*/ public interface BeanNameAware {/*** 设置beanName* …...

C++ 异常处理
C 异常(Exception)是指在程序运行时产生的特殊情况,例如,尝试除以零的操作。异常提供了一种转移程序控制权的方式,异常处理涉及到三个关键字:try、catch、throw。 throw: 当问题出现时,程序会抛出一个异常。这是通过…...

OJ练习第157题——单词拆分
单词拆分 力扣链接:139. 单词拆分 题目描述 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。 示例 …...

若依tab-content面板失效、使用load的解决方法(附详细步骤)
【版权所有,文章允许转载,但须以链接方式注明源地址,否则追究法律责任】【创作不易,点个赞就是对我最大的支持】 前言 仅作为学习笔记,供大家参考 总结的不错的话,记得点赞收藏关注哦! 思路&…...

2023年03月 C/C++(五级)真题解析#中国电子学会#全国青少年软件编程等级考试
第1题:拼点游戏 C和S两位同学一起玩拼点游戏。有一堆白色卡牌和一堆蓝色卡牌,每张卡牌上写了一个整数点数。C随机抽取n张白色卡牌,S随机抽取n张蓝色卡牌,他们进行n回合拼点,每次两人各出一张卡牌,点数大者获…...

Android安卓实战项目(12)—关于身体分析,BMI计算,喝水提醒,食物卡路里计算APP【支持中英文切换】生活助手类APP(源码在文末)
Android安卓实战项目(12)—关于身体分析,BMI计算,喝水提醒,食物卡路里计算APP【支持中英文切换】生活助手类APP(源码在文末🐕🐕🐕) 一.项目运行介绍 B站演示…...

Hadoop 3.2.4 集群搭建详细图文教程
目录 一、集群简介 二、Hadoop 集群部署方式 三、集群安装 3.1 集群角色规划 3.2 服务器基础环境准备 3.2.1 环境初始化 3.2.2 ssh 免密登录(在 hadoop01 上执行) 3.2.3 各个节点上安装 JDK 1.8 环境 3.3 安装 Hadoop 3.4 Hadoop 安装包目…...

STL的学习之一
1)STL扫盲 1)C标准库和标准模板库是不一样的 2)标准模板库是用泛型编程方式编写的函数或者类库; 3) SGI STL linux一般用,P.J.Plauger STL,visual2017 windows用 STL六大组件 : 容器,迭代器 STL 算法(说白了就是函数…...

如何使用Python进行数据科学实验?
使用Python进行数据科学实验通常需要以下步骤: 以上仅为使用Python进行数据科学实验的基本步骤,具体实验过程会根据具体问题和数据集的特点而有所不同。可以进一步学习和探索相关的数据科学和机器学习技术,以提高实验的效果和表现。 安装Pyt…...

华为数通方向HCIP-DataCom H12-821题库(拖拽题,知识点总结)
以下是我在现有题库中整理的需要重点关注的考点内容,如有遗漏小伙伴可以留言补充。...

第三课:C++实现PDF去水印
PDF去水印是一项非常复杂的任务,需要一定的计算机图形学知识和技术,也需要使用到一些专业的工具库。以下是一种可能的实现方法: 首先,需要将PDF文件解析成一系列图形元素,包括文字、矢量图形等。可以使用开源库Poppler或MuPDF来解析PDF文件。 接下来,需要判断PDF文件是否…...

实现Android分布式协同办公:将待办事件App与本地Web服务结合
AndServer AndServer 是 Android 平台的 Web Server 和 Web Framework,它基于编译时注解提供了类似 SpringMVC 的注解和功能。 Github :https://github.com/yanzhenjie/AndServer使用文档:https://yanzhenjie.com/AndServer/业务需求 实现待办事件APP本地启动Web服务,将本…...

VMware12.1.1安装Centos7
VMware12.1.1安装Centos7 1、下载相关软件 1.1 Centos7下载 官方下载链接: http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1511.iso 1.2 VMware Workstation下载 VMware Workstation 12.1.1官方原版下载: https://dow…...

bazel构建原理
调度模型 传统构建系统有很多是基于任务的,例如 Ant,Maven,Gradle。用户可以自定义"任务"(Task),例如执行一段 shell 脚本。用户配置它们的依赖关系,构建系统则按照顺序调度。 基于 Task 的调度…...

matlab 点云的二进制形状描述子
目录 一、功能概述1、算法概述2、主要函数3、参考文献二、代码示例三、结果展示四、参数解析输入参数名称-值对应参数输出参数五、参考链接本文由CSDN点云侠原创,...

MongoDB实验——在Java应用程序中操作 MongoDB 数据
在Java应用程序中操作 MongoDB 数据 1. 启动MongoDB Shell 2. 切换到admin数据库,使用root账户 3.开启Eclipse,创建Java Project项目,命名为MongoJava File --> New --> Java Project 4.在MongoJava项目下新建包,包名为mo…...

java+springboot+mysql校园跑腿管理系统
项目介绍: 使用javaspringbootmysql开发的校园跑腿管理系统,系统包含超级管理员,系统管理员、用户角色,功能如下: 超级管理员:管理员管理;用户管理(充值);任…...

ubuntu20.04 server 安装后磁盘空间只有一半的处理
这里扩展:/dev/mapper/ubuntu–vg-ubuntu–lv rootbook:/data# df -h Filesystem Size Used Avail Use% Mounted on udev 3.9G 0 3.9G 0% /dev tmpfs 795M 1.2M 79…...

〔017〕Stable Diffusion 之 常用模型推荐 篇
✨ 目录 🎈 模型网站🎈 仿真系列🎈 国风系列🎈 卡通动漫系列🎈 3D系列🎈 一些好用的lora模型🎈 模型网站 由于现在大模型超级多,导致每种画风的模型太多,那么如何选择最好最适合的模型,成了很多人头疼的问题由于用的大部分都是1.5的模型,所以优先下载 safete…...

多目标应用:基于多目标人工蜂鸟算法(MOAHA)的微电网多目标优化调度MATLAB
一、微网系统运行优化模型 参考文献: [1]李兴莘,张靖,何宇,等.基于改进粒子群算法的微电网多目标优化调度[J].电力科学与工程, 2021, 37(3):7 二、多目标人工蜂鸟算法MOAHA 多目标人工蜂鸟算法(multi-objective artificial hummingbird algorithm&…...

【HTML5】HTML5 特性
HTML5 特性 1. 语义化标签 <header>:表示网页或某个区域的页眉部分,通常包含网站的标志、导航菜单等内容。<nav>:表示导航区域,用于包含网站的主要导航链接。<main>:表示网页的主要内容区域&#…...

【FreeRTOS】互斥量的使用与逐步实现
在FreeRTOS中,互斥量是一种用于保护共享资源的同步机制。它通过二进制信号量的方式,确保在任意时刻只有一个任务可以获取互斥量并访问共享资源,其他任务将被阻塞。使用互斥量的基本步骤包括创建互斥量、获取互斥量、访问共享资源和释放互斥量…...

Spring-Cloud-Openfeign如何传递用户信息?
用户信息传递 微服务系统中,前端会携带登录生成的token访问后端接口,请求会首先到达网关,网关一般会做token解析,然后把解析出来的用户ID放到http的请求头中继续传递给后端的微服务,微服务中会有拦截器来做用户信息的…...