git:码云仓库提交以及Spring项目创建
git:码云仓库提交
1 前言
码云访问稳定性优于github,首先准备好码云的账户:

官网下载GIT,打开git bash:
查看当前用户的所有GIT仓库,需要查看全局的配置信息,使用如下命令:
git config --global --list
可以查看到配置的user.name和user.email:

如果希望查看user.name,可以执行如下命令:
git config --global user.name
或者查看email:
git config --global user.email
如果没有配置name和email,那么需要先配置:
git config --global user.name "xiaoxu"
git config --global user.email "xxx@xxx.com"
2 操作步骤
首先配置SSH的免密登录(HTTPS的方式每次需要账户和密码才能登录):
进入git bash,执行如下:
ssh-keygen -t rsa -C "xiaoxu", "xxx@xxx.com"
若输入为邮箱,则连续3次回车,在本地的用户目录下,有.ssh文件夹,其中存放如下文件:

id_rsa.pub是公钥文件,以idea方式打开该公钥文件:

将其完整复制(包括开头的ssh-rsa)即可。
或者使用命令:
cat ~/.ssh/id_rsa.pub
复制如下的公钥即可:

同时在码云里找到账号设置:

找到安全设置的SSH公钥:

标题随意,粘贴公钥即可:

码云提交需要验证,输入你创建该码云账户时的账户密码即可添加SSH公钥成功。
回到git bash进行验证,执行如下命令:
ssh -T git@gitee.com
输入yes,回车即可:

3 码云仓库创建项目
点击新建仓库:

输入仓库名称:

这里仓库我选择私有仓库,语言使用Java,.gitignore选择Maven即可,分支模型选择生成/开发模型,在dev环境时部署到dev分支,到生产环境时,合并到master分支即可:

新建仓库后,找到gitee上的克隆/下载,点击复制

点击复制如下的HTTPS的git链接:

打开idea,选择:File->New->Project from Version Control

如下,Version Control选择GIT:

URL粘贴刚才从gitee仓库上复制来的HTTPS的链接即可:

同时点击idea的clone按钮:

idea提示需要输入Username和Password:

gitee提示,使用HTTPS协议时,会出现账号密码验证步骤,建议配置使用私人令牌代替登录密码:

在gitee上创建私人令牌:

点击提交后输入创建gitee账号时的密码即可,注意私人令牌需要自己妥善保存好,因为平台在关闭后续,不会再展示该私人令牌了。
按照码云的提示输入username和私人令牌:

在idea上填写userName和刚才生成的私人令牌密码即可:

点击Log In后,选择New Window打开该项目成功:

接下来新建模块Module:

新建模块Module时,发现没有Spring Initializer的选项,原因可能是没有下载Spring Boot插件:
先下载插件:
点击File->Settings:

点击Plugins,非社区版搜索Spring boot,然后安装插件即可。
这里是社区版,没有找到Spring boot插件,亦可以选择安装Spring Assistant插件,插件安装后记得restart重启idea。
这里使用maven创建:

填入下方参数:

新建成功:

类似上述操作,创建多个module如下:

同时在根项目目录xiaoxumall下,新建pom.xml(module标签中是上述新建module的name,也就是文件夹名,比如order等等):
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.xiaoxu.mall</groupId><artifactId>xiaoxumall</artifactId><version>1.0-SNAPSHOT</version><name>xiaoxumall</name><description>小徐商城聚合服务</description><packaging>pom</packaging><modules><module>user</module><module>storage</module><module>startup</module><module>product</module><module>order</module><module>coupon</module></modules></project>
然后添加总pom文件,点击右侧的Maven按钮,点击+号(Add Maven Projects):

选择上面新建的根项目pom文件:

添加后,可看到刚才还是普通的xml文件的标识,现在更新为带有m(Maven)标识的pom文件了:

针对根pom执行ctrl+shift+o后,可见根目录出现root的标识:

同时在根root执行clean命令(清除target目录下的二进制.class文件):

全部的module模块,均会执行clean命令:

另外GIT没有展示出来Local Changes,选择idea:File->Settings->Version Control->Commit->取消勾选的Use non-modal commit interface:

取消后点击:apply->ok即可

可以看到idea已经出现Local Changes,其中包含Unversioned Files:

其中包含许多*.iml文件,那么我们尝试在根项目的.gitignore文件中,忽略掉该文件的提交,新增:**/*.iml:

刷新后可知,Unversioned Files中已经不包含.iml的文件了,因为git已经忽略了这些文件的提交管理了。同时下面可见,被忽略的文件在idea中呈现灰色了,意即已被忽略的文件:

同时我们在根root下执行compile编译操作(所有的module均会执行编译操作):

编译后,会生成target目录,因为.java文件编译后,会生成二进制的.class文件,.class文件就会放置于target目录中:

正常来说我们也应该在git提交时,忽略掉这些target文件数据,不过在根.gitignore文件里,已经忽略了target/目录数据,故而此处无需配置:

最后忽略根目录的idea文件夹,以及全部module下的.gitignore文件,最后可见剩下的8个未被版本管理起来的文件,都是我们的代码文件了:

target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
# https://github.com/takari/maven-wrapper#usage-without-binary-jar
.mvn/wrapper/maven-wrapper.jar**/*.iml
.idea
**/.gitignore
刚才主要为了演示gitignore的忽略文件方式,现在准备提交代码,将上面取消勾选的Use non-modal commit interface重新勾选上:

可以看到idea左侧出现Commit一栏(因为勾选了Use non-modal commit interface选项,默认勾选就是存在的):

点击Commit后,idea提示如下:

如果确保代码不存在问题,则无需review,直接点击Commit即可:
点击Commit后,此时gitee码云还未更新,因为还未执行push操作:
一般git指令操作顺序为:
git status
git add *
git commit -m "xxx备注"
git push
故而我们缺少了最后push的一步:

从idea的展示上也能看出,紫色是origin远程分支提交,而黄色是HEAD,绿色是mater本地分支(不带origin的标识),所以我们只是提交到了本地分支上,还需要push到远程分支上:

点击右下角的master分支按钮:

在我们的本地分支(Local Branches)master上,有绿色的push按钮,点击此按钮push到远程gitee的master分支上即可:

出现如下的push界面,点击push按钮即可:

提交后,可以看到idea上的分支提交标识中含有紫色的远程分支标签,说明代码提交成功:

同时gitee仓库代码提交成功:

相关文章:
git:码云仓库提交以及Spring项目创建
git:码云仓库提交 1 前言 码云访问稳定性优于github,首先准备好码云的账户: 官网下载GIT,打开git bash: 查看当前用户的所有GIT仓库,需要查看全局的配置信息,使用如下命令: git …...
【Miniconda】基于conda避免运行多个PyTorch项目时发生版本冲突
【Miniconda】基于conda避免运行多个PyTorch项目时发生版本冲突 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到…...
【机器学习-02】矩阵基础运算---numpy操作
在机器学习-01中,我们介绍了关于机器学习的一般建模流程,并且在基本没有数学公式和代码的情况下,简单介绍了关于线性回归的一般实现形式。不过这只是在初学阶段、为了不增加基础概念理解难度所采取的方法,但所有的技术最终都是为了…...
《A Second-Order PHD Filter With Mean and Variance in Target Number》学习心得
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1. 主要内容2. PHD、CPHD和SO-PHD之间的差别2.1 PHD2.2 CPHD2.3 SO-PHD2.4 关于“CPHD对每个可能的目标数量状态进行建模”3. PHD、CPHD和SO-PHD描述目标数量分布所用的参数3.1 PHD所用参数3.2 CPH…...
React 实现下拉刷新效果
简介 本文基于react实现下拉刷新效果,在下拉的时候会进入loading状态。 实现效果 效果如上图所示,在下拉到底部时候,会出现loading条,在处理完成后loading条消失。 具体代码 布局 & 逻辑 import {useRef, useState} from …...
使用endnote插入引用文献导致word英文和数字变成符号的解决方案
使用endnote插入引用文献导致word英文和数字变成符号的解决方案 如图使用endnote插入引用文献导致word英文和数字变成符号字体Wingdings Wingdings 是一个符号字体系列,它将许多字母渲染成各式各样的符号,用途十分广泛。 解决方法: 直接通过更…...
npm下载慢换国内镜像地址
1 设置淘宝镜像地址 npm config set registry http://registry.npm.taobao.org 2 查看当前下载地址 npm config get registry 3 其它镜像地址列表: 1. 官方镜像:https://registry.npmjs.org/ 2. 淘宝镜像:https://registry.npm.taobao.o…...
开源绘图工具 PlantUML 入门教程(常用于画类图、用例图、时序图等)
文章目录 一、类图二、用例图三、时序图 一、类图 类的UML图示 startuml skinparam classAttributeIconSize 0 class Dummy {-field1 : String#field2 : int~method1() : Stringmethod2() : void } enduml定义能见度(可访问性) startumlclass Dummy {-f…...
Ubuntu20下C/C++编程开启TCP KeepAlive
1、在linux下,测试tcp保活,可以使用tcp自带keepalive功能。 2、几个重要参数: tcp_keepalive_time:对端在指定时间内没有数据传输,则向对端发送一个keepalive packet,单位:秒 tcp_keep…...
前世档案(不用二叉树语法秒杀版c++)
网络世界中时常会遇到这类滑稽的算命小程序,实现原理很简单,随便设计几个问题,根据玩家对每个问题的回答选择一条判断树中的路径(如下图所示),结论就是路径终点对应的那个结点。 现在我们把结论从左到右顺序…...
Java基础 - 9 - 集合进阶(二)
一. Collection的其他相关知识 1.1 可变参数 可变参数就是一种特殊形参,定义在方法、构造器的形参列表里,格式是:数据类型…参数名称; 可变参数的特点和好处 特点:可以不传数据给它;可以传一个或者同时传多个数据给…...
javaEE——线程的等待和结束
文章目录 Thread 类及常见方法启动一个线程中断一个线程变量型中断调用 interrupt() 方法来通知观察标志位是否被清除 等待一个线程获取当前线程引用休眠当前线程 线程的状态观察线程的所有状态观察 1: 关注 NEW 、 RUNNABLE 、 TERMINATED 状态的切换 多线程带来的风险为什么会…...
sqlplus设置提示符
作为DBA,需要管理好多数据库,经常会有一台服务器安装多个oracle实例的情况,为避免误操作实例,我们需要在执行sqkplus前,先通过$ echo $ORACLE_SID或 SQL>select name from v$database查看当前实例,这样难…...
macbook删除软件只需几次点击即可彻底完成?macbook删除软件没有叉 苹果笔记本MacBook电脑怎么卸载软件? cleanmymac x怎么卸载
在MacBook的使用过程中,软件安装和卸载是我们经常需要进行的操作。然而,不少用户在尝试删除不再需要的软件时,常常发现这个过程既复杂又耗时。尽管MacOS提供了一些基本的macbook删除软件方法,但很多时候这些方法并不能彻底卸载软件…...
Unity WebGL ios 跳转URL
需求: WebGL跳转网址 现象: Application.OpenURL("https://www.baidu.com"); 这个函数在安卓上可以用,IOS 不管用 解决方案: 编写js插件,unity调用js函数,由js跳转网址 注意事项 : 插件后缀为.jsli…...
机器学习模型—XGBoost
机器学习模型—XGBoost XGBoost(Extreme Gradient Boosting)是由陈天奇等人于2014年提出的一个高效可扩展的梯度提升库。它在梯度提升框架的基础上进行了优化和改进,被广泛应用于机器学习竞赛和实际应用中 作为GBDT(Gradient Boosting Decision Tree)的扩展版本,XGBoost在算…...
在Swift中集成Socket.IO进行实时通信
在Swift中集成Socket.IO进行实时通信 实时通信是许多现代应用程序的重要组成部分,从聊天应用程序到协作平台。Socket.IO 是一个流行的库,用于在 Web 和移动应用程序中实现实时的双向通信。在本文中,我们将讨论如何使用 Socket.IO-Client-Swi…...
vue防止用户连续点击造成多次提交
中心思想:在第一次提交的结果返回前,将提交按钮禁用。 方法一:给提交按钮加上disabled属性,在请求时先把disabled属性改成true,在结果返回时改成false 方法二:添加loading遮罩层,可以直接使用e…...
upload-labs通关方式
pass-1 通过弹窗可推断此关卡的语言大概率为js,因此得出两种解决办法 方法一 浏览器禁用js 关闭后就逃出了js的验证就可以正常php文件 上传成功后打开图片链接根据你写的一句话木马执行它,我这里采用phpinfo() 方法二 在控制台…...
本地用AIGC生成图像与视频
最近AI界最火的话题,当属Sora了。遗憾的是,Sora目前还没开源或提供模型下载,所以没法在本地跑起来。但是,业界有一些开源的图像与视频生成模型。虽然效果上还没那么惊艳,但还是值得我们体验与学习下的。 Stable Diffu…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...
Linux --进程控制
本文从以下五个方面来初步认识进程控制: 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程,创建出来的进程就是子进程,原来的进程为父进程。…...
AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
LLMs 系列实操科普(1)
写在前面: 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容,原视频时长 ~130 分钟,以实操演示主流的一些 LLMs 的使用,由于涉及到实操,实际上并不适合以文字整理,但还是决定尽量整理一份笔…...
【C++】纯虚函数类外可以写实现吗?
1. 答案 先说答案,可以。 2.代码测试 .h头文件 #include <iostream> #include <string>// 抽象基类 class AbstractBase { public:AbstractBase() default;virtual ~AbstractBase() default; // 默认析构函数public:virtual int PureVirtualFunct…...
【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅!
【把数组变成一棵树】有序数组秒变平衡BST,原来可以这么优雅! 🌱 前言:一棵树的浪漫,从数组开始说起 程序员的世界里,数组是最常见的基本结构之一,几乎每种语言、每种算法都少不了它。可你有没有想过,一组看似“线性排列”的有序数组,竟然可以**“长”成一棵平衡的二…...
spring boot使用HttpServletResponse实现sse后端流式输出消息
1.以前只是看过SSE的相关文章,没有具体实践,这次接入AI大模型使用到了流式输出,涉及到给前端流式返回,所以记录一下。 2.resp要设置为text/event-stream resp.setContentType("text/event-stream"); resp.setCharacter…...
