IDEA集成Git

一、配置Git忽略文件

例如:用eclipse创建的项目有其特定的文件,例如:.classpath,.project文件,而用IDEA创建的项目也有其特定的文件:.xml,.iml,.target,我们需要最好忽略他们。

为什么要忽略他们?

与项目的实际功能无关,不参与服务器上部署运行。把它们忽略掉能够屏蔽 IDE 工具之间的差异。所以如果我们忽略掉,好处就是1.减少上传量;2.如果该项目是eclipse创建的,则存在eclipse的特定文件,而如果我们使用IDEA运行这些特定文件可能会干扰到运行。坏处就是我们直接用eclipse运行,但是忽略后少了这些配置文件,也运行不起来

忽略操作

1)创建忽略规则文件 xxxx.ignore(前缀名随便起,建议是 git.ignore)

这个文件的存放位置原则上在哪里都可以,为了便于让.gitconfig 文件引用,建议也放在用

户家目录C:\Users\ASUS下。

git.ignore 文件模版内容如下:

# Compiled class file
*.class
# Log file
*.log
# BlueJ files
*.ctxt
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar
# virtual machine crash logs, see 
http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
.classpath
.project
.settings
target
.idea
*.iml

2)在.gitconfig 文件中引用忽略配置文件(此文件在 Windows 的家目录中)

[user]
name = Layne
email = Layne@atguigu.com
[core]
excludesfile = C:/Users/asus/git.ignore
注意:这里要使用“正斜线(/)”,不要使用“反斜线(\)

二、IDEA操作本地库

定位Git程序

我的安装目录为:D:\ProgramSofts\Git\bin\git.exe,版本为2.33.1
在这里插入图片描述

初始化本地库

在这里插入图片描述

选择要创建 Git 本地仓库的工程

在这里插入图片描述

点击OK后,gitTest项目就初始化为本地库了,在IDEA下项目的所有文件名都是红色的,这表示文件都在工作区中,尚未被追踪(加入暂存区)

添加到暂存区

右键点击项目(可以以项目为单位进行选择或者以文件为单位)选择 Git -> Add 将项目添加到暂存区。
方式一:以项目为单位
在这里插入图片描述
方式二:以未提交到暂存区的文件为单位
在这里插入图片描述

Add后项目下所有的文件名都为绿色,这表示添加到暂存区了。

提交到本地库

方式一:以项目为单位
在这里插入图片描述
方式二:以未提交到本地库的文件为单位
在这里插入图片描述
提交信息,同时取消勾选代码分析

在这里插入图片描述

提交完成后项目下的文件名又变为黑色。

切换版本

每当对一个文件进行修改后,右键项目或该文件选择Git->commit file/directory都视为提交一个新的版本。

在 IDEA 的左下角,点击 Version Control,然后点击 Log 查看版本
在这里插入图片描述

选中某个版本后右键选择要切换的版本,然后在菜单里点击 Checkout Revision。

在这里插入图片描述

切换分支

直接使用切换版本不就好了吗?

两者的处理场景并不一样,版本切换是一个项目已经开发完毕了,提交产生的一个新的版本,如果我们不满意这个版本,我们可以切换到上一个版本去。分支切换是项目在开发过程中,一个项目需要进行功能扩展,分支类似将此时的项目进行拷贝,将副本给开发人员进行开发,开发好后合并到主线上去,合并的主线分支又是一个新的版本。N个人之所以可以同时进行功能扩充,是因为分支的存在,N个人进行功能扩充,就存在N条分支,每次开发完成进行提交就产生一个新的版本,开发完毕就存在N个新版本。所以最主要的区别是分支可以对同一版本的项目进行功能扩展,每个人将自己需要实现的接口开发好后,负责人可以合并他们的代码形成一个新的版本,但是如果只使用版本是无法合并代码的。(其实不用纠结,好好理解分支的优势就明白为什么存在分支切换了。)

创建分支

1)直接点击IDEA右下角Git->New Branch(或者是一个➕号)

在这里插入图片描述

2)或者在项目或者某个文件选择Git,在 Repository 里面,点击 Branches 按钮,在弹出的 Git Branches 框里,点击 New Branch 按钮。
在这里插入图片描述

填写分支名称,创建 hot-fix 分支。
在这里插入图片描述

然后再 IDEA 的右下角看到 hot-fix,说明分支创建成功,并且当前已经切换成 hot-fix 分支
在这里插入图片描述

切换分支

在 IDEA 窗口的右下角,切换到 master 分支。
在这里插入图片描述

然后在 IDEA 窗口的右下角看到了 master,说明 master 分支切换成功。

在这里插入图片描述

合并分支

在 IDEA 窗口的右下角,将 hot-fix 分支合并到当前 master 分支。

在这里插入图片描述

如果代码没有冲突,分支直接合并成功,分支合并成功以后,代码自动提交,无需手动提交本地库。

解决冲突

如果 master 分支和 hot-fix 分支都修改了同一处代码,在合并分支的时候就会发生冲突。

(1)点击 Conflicts 框里的 Merge 按钮,进行手动合并代码。

在这里插入图片描述

(2)手动合并完代码以后,点击右下角的 Apply 按钮。

在这里插入图片描述

(3)代码冲突解决,自动提交本地库。

三、 IDEA集成GitHub

设置GitHub账号

一、在idea中setting中搜索GitHub,填好用户名和token,注意用token登录,现在不支持用户名和密码登录了。
在这里插入图片描述
二、这个token要从GitHub上获取

  1. GitHub登录后在最右边点击头像找到setting:
    在这里插入图片描述

  2. 进入setting后在最下面左边可以看到:Devleoper settings
    在这里插入图片描述

  3. 生成token:找到tokens (classic)
    在这里插入图片描述
    下拉选择generate new token (classic)
    在这里插入图片描述

  4. 填入token对应信息,勾选必要权限:repo + gist + delete_repo

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
5. 复制生成的token
在这里插入图片描述
三、在idea中填入复制的token
在这里插入图片描述
在这里插入图片描述

分享工程到GitHub

分享操作包括:1.新建远程库;2.推送当前分支内容到远程库

实际工作中,每完成一个小功能,就提交一次,写清楚注释,下班前,代码全部push到远程仓库,前提是代码不要报错

在这里插入图片描述
Repository name:远程仓库名

Remote:远程仓库别名

在这里插入图片描述
在这里插入图片描述

push推送本地库到远程库

push前先pull.

右键点击项目,可以将当前分支的内容 push 到 GitHub 的远程库中或者点击VCS下的Git

在这里插入图片描述
在这里插入图片描述

注意:push 是将本地库代码推送到远程库,如果本地库代码跟远程库代码版本不一致,push 的操作是会被拒绝的。也就是说,要想 push 成功,一定要保证本地库的版本要比远程库的版本高!因此一个成熟的程序员在动手改本地代码之前,一定会先检查下远程库跟本地代码的区别!如果本地的代码版本已经落后,切记要先 pull 拉取一下远程库的代码,将本地代码更新到最新以后,然后再修改,提交,推送!所以push前先pull.

pull拉取远程库到本地库

右键点击项目,可以将远程仓库的内容 pull 到本地仓库。

在这里插入图片描述
在这里插入图片描述

注意:pull 是拉取远端仓库代码到本地,如果远程库代码和本地库代码不一致,会自动合并,如果自动合并失败,还会涉及到手动解决冲突的问题。

clone克隆远程库到本地

在这里插入图片描述
在这里插入图片描述

为 clone 下来的项目创建一个工程,然后点击 Next。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

装饰器设计模式是什么?什么是 Decorator 装饰器设计模式?Python 装饰器设计模式示例代码

什么是 Decorator 装饰器设计模式? 装饰器模式是一种结构型设计模式,它允许向现有对象动态地添加新功能,同时不改变其结构。这种模式实现了对对象的包装,称为装饰器,并且可以在运行时动态地添加、修改或删除对象的行为…

httpd(Web服务器)

名词解释 1、URL&#xff1a;Uniform Resource Locator&#xff0c;统⼀资源定位符 2、⽹址格式&#xff1a;<协议>://<主机或主机名>[:port]/<⽬录资源,路径> 3、主机地址/主机名&#xff1a;主机地址是服务器在因特⽹所在的IP地址。主机名就需要域名解析…

用于计算机屏幕安全摄像头系统:Screen Anytime Crack

Screen Anytime 是一款软件&#xff0c;旨在自动将整个用户会话或 PC/服务器/VM/Kiosk 的 /RDP/Citrix/RemoteApp 会话的屏幕活动记录到视频日志文件中&#xff0c;以用于记录、审核和监控目的。通过重播其高度压缩的视频&#xff0c;您可以轻松回顾单台计算机或一组服务器/PC …

Power Apps-下拉列表控件

插入一个下拉列表控件 设置值的两种方式 1.通过属性items写数组设置 2.通过连接数据表&#xff0c;先在右侧操作面板中选择项目中的数据表 再从Value中选择其中一列&#xff0c;下拉就可以选择该列全部行的值 但是这样会导致有很多重复的字段&#xff0c;所以可以在items属性里…

最近技术圈发生了很多大事,来聊聊

如标题所说&#xff0c;最近这几年全球都大事频发。有事甚至不知道是我更关心社会和时政、还是真的进入一个大变革时代。 可以确认的是&#xff0c;现在这个时代、科技的发展到了一个可感知到越来越快的速度。 … 前几天&#xff0c;当下AI 领域最有知名的人奥特曼被 OpenAI…

Leaflet实现轨迹播放动画效果

效果图如下&#xff1a; <!DOCTYPE html> <html><head><title>轨迹</title><meta charset"utf-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><!-- 引入样式 -->…

Sentinel 授权规则 (AuthorityRule)

Sentinel 是面向分布式、多语言异构化服务架构的流量治理组件&#xff0c;主要以流量为切入点&#xff0c;从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。 SpringbootDubboNacos 集成 Sentinel&…

基于深度学习的文本分类

通过构建更复杂的深度学习模型可以提高分类的准确性&#xff0c;即分别基于TextCNN、TextRNN和TextRCNN三种算法实现中文文本分类。 项目地址&#xff1a;zz-zik/NLP-Application-and-Practice: 本项目将《自然语言处理与应用实战》原书中代码进行了实现&#xff0c;并在此基础…

Connect-The-Dots_2

Connect-The-Dots_2 一、主机发现和端口扫描 主机发现&#xff0c;靶机地址192.168.80.148 arp-scan -l端口扫描 nmap -A -p- -sV 192.168.80.148开放端口 21/tcp open ftp vsftpd 2.0.8 or later 80/tcp open http Apache httpd 2.4.38 ((Debian)) 111/tcp …

前缀和——DP34 【模板】前缀和

文章目录 &#x1f34b;1. 题目&#x1f348;2. 算法原理&#x1f348;3. 代码实现 &#x1f34b;1. 题目 题目链接&#xff1a;【模板】前缀和_牛客题霸_牛客网 (nowcoder.com) 描述 给定一个长度为n的数组a1,a2,…an. 接下来有q次查询, 每次查询有两个参数l, r. 对于每个询…

基于ZLMediaKit的GB28181视频平台demo

GB28181 主要内容 国标的20位id是按照标准来定的&#xff0c;前8位是地域信息&#xff0c;9-10位是行业信息&#xff0c;11-13是设备类型、14是网络标识、后6位为序号 约定以SIP协议作为会话通道的使用标准&#xff0c;以RTP作为语言和视频的载体。联网系统在进行音视频传输及…

ui设计师简历自我评价的范文(合集)

ui设计师简历自我评价的范文篇一 本人毕业于艺术设计专业&#xff0c;具有较高的艺术素养&#xff0c;平时注重设计理论知识的积累&#xff0c;并将理论应用到作品中。了解当下设计的流行趋势&#xff0c;设计注重细节、重视用户体验&#xff0c;对色彩搭配有着浓厚的兴趣&…

简墨的进化之路:打造大模型数据计算系统的云存储底座

10月24日程序员节&#xff0c;「大模型数据计算系统」2023拓数派年度技术论坛在上海圆满落幕&#xff0c;拓数派大模型数据计算系统&#xff08;PieDataComputingSystem&#xff0c;缩写&#xff1a;πDataCS&#xff09;如约而至&#xff01;πDataCS 以云原生技术重构数据存储…

私有化敏感词检测API服务wordscheck

之前有网友在找敏感词检测的应用&#xff0c;这个应该能满足他的需求&#xff1b; 什么是 wordscheck &#xff1f; wordscheck 是敏感词检测 API&#xff0c;提供文本识别、智能鉴黄、涉政检测、谩骂等等敏感词检测过滤服务。 简介 敏感词库从大量样本库整理出来&#xff0c;…

Java 编码

编码: 加密: 通过加密算法和密钥进行 也可通过码表进行加密 对称加密: 缺点:可被截获 元数据---加密算法密钥密文 ----> 解密算法密钥元数据 算法:DES(短 56位),AES(长 128位)破解时间加长 非对称加密: 元数据-加密算法加密密钥 密文 --->加密算法解密密钥元数据 …

1.Qt5.15及其以上的下载

Qt5.15及其以上的下载 简介&#xff1a; ​ Qt是一个跨平台的C库&#xff0c;允许开发人员创建在不同操作系统&#xff08;如Windows、macOS、Linux/Unix&#xff09;和设备上具有本地外观和感觉的应用程序。Qt提供了一套工具和库&#xff0c;用于构建图形用户界面&#xff0…

CNVD-2023-12632:泛微E-cology9 browserjsp SQL注入漏洞复现 [附POC]

文章目录 泛微E-cology9 browserjsp SQL注入漏洞(CNVD-2023-12632)漏洞复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 0x06 修复建议 泛微E-cology9 browserjsp SQL注入漏洞(CNVD-2023-12632)漏洞复现 [附POC] 0x…

JavaEE 多线程01

为什么引入多线程? 首先进程已经能很好的完成多任务这个情景下的并发编程了,那为什么又引入多线程呢? 这是因为在一些情景下,我么需要大量的创建和销毁进程来完成一些任务,此时多进程对系统的开销就会很大了. 假设有这样一个场景,服务器同时接收到很多个服务请求,这个时候服务…

数据挖掘 K近邻

什么时候用K近邻&#xff1f; 交叉验证的时候。最常见的交叉验证方法是K折交叉验证&#xff0c;其中数据集被均匀分成K个子集&#xff0c;称为折&#xff0c;然后执行K次训练和测试&#xff0c;每次选择不同的折作为测试集&#xff0c;其余的作为训练集。最后&#xff0c;将K次…

windows11快速输入时间和日期

windows11快速输入时间和日期 〇、赶时间的看这里 任务栏微软输入法图标右键 | 设置 | 词库和自学习 | 用户自定义短语 |添加或编辑自定义短语| 添加日期设置 %yyyy%-%MM%-%dd%时间设置 %yyyy%-%MM%-%dd% %HH%:%mm%:%ss%-------------------------------------------------…