热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

IntelliJIDEA和Git、GitHub、Gitlab的使用(五)

IntelliJ-IDEA和Git、GitHub、Gitlab的使用(五),Go语言社区,Golang程序员人脉社

IntelliJ-IDEA版本控制介绍,主要讲述git

一、基本入门

1.IntelliJ-IDEA预装的版本控制介绍

我们来看IntelliJ-IDEA的版本控制设置区域
打开File>Settings>Version Control
版本控制设置区域
可以看到里面有git插件

这让很多人认为 IntelliJ IDEA 自带了 SVN 或是 Git 等版本控制工具,认为只要安装了 IntelliJ IDEA 就可以完全使用版本控制应有的功能。这完全是一种错误的解读,IntelliJ IDEA 是自带对这些版本控制工具的支持插件,但是该装什么版本控制客户端还是要照样装的。
上面可以看到里面还自带了github插件,这是因为目前太多人使用 Github 进行协同或是项目版本管理

2.git.exe和Github的配置

1.配置git.exe

先确保电脑上已经安装了Git和TortoiseGit
接着再配置git客户端
配置git客户端

2.配置Github

下面是选择账号和密码登录
选择账号和密码登录

3.clone项目从Github上

接着可以将GitHub上的项目checkout下来
选择gitHub
如果GitHub上有多个项目的话,那么可以选择其中的一个
选择一个项目
点击clone后,IntelliJ-IDEA就会开始clone项目
正在clone项目

4.将本地项目上传到Github上

选择Import into Version Control
将本地项目上传到Github上
然后填写相关的信息
相关的信息
这时候会提示你选择上传的文件
这里写图片描述
仓库创建成功后,会出现如下的提示
仓库创建成功
再看GitHub下,多了一个项目仓库
项目仓库
点击进去,项目的相关结构如下
项目的相关结构

二、版本控制的主要操作按钮

git的操作的入口如下:
git操作的入口
也可以在工具栏中进行操作
注意这五个按钮
这里写图片描述
五个按钮的功能如下:

  1. 第一个按钮:Update Project 更新项目。
  2. 第二个按钮:Commit changes 提交项目上所有变化文件。点击这个按钮不会立马提交所有文件,而是先弹出一个被修改文件的一个汇总框,具体操作下面会有图片进行专门介绍。
  3. 第三个按钮:Compare with the Same Repository Version 当前文件与服务器上该文件通版本的内容进行比较。如果当前编辑的文件没有修改,则是灰色不可点击。
  4. 第四个按钮:Show history 显示当前文件的历史记录。
  5. 第五个按钮:Revert 还原当前被修改的文件到未被修改的版本状态下。如果当前编辑的文件没有修改,则是灰色不可点击。

具体作用如下,如下面添加了一行,如果不满意,可以还原
还原
但是如果想提交的话,可以选择这个
选择提交
提交
填写相关的信息后,可以直接选择commit和push
选择comimit和push
点击push
点击push
提交完毕后,我们可以查看相关的记录
查看相关的记录
可以看到如下的记录
查看相关的记录
这时候GitHub上项目就会出现相关的信息了
提交后GitHub上的项目

三、版本控制的常用设置

1.Version Control面板

版本控制
1. 代表这个项目的版本控制是GIT
2. Show directories with changed descendants 表示子目录有文件被修改了,则该文件的所有上层目录都显示版本控制被修改的颜色(建议勾选)

2.Confimation确认信息面板

添加新文件和删除文件的提示
确认信息面板

3.Ignored Files面板

这个是设置不添加到版本控制的文件
这里写图片描述

4.commit文件的面板介绍

commit文件的时候会出现如下的面板
cmmmit文件后的面板

1.show Diff

show Diff可以比较本地跟服务器文件的不同
show Diff

2.Move to Another ChangeList

这个选项可以将改动的文件分门别类的放置在一个文件夹中,等修改完毕,可以一起提交(一般用在分模块开发上,也就是开发完一个模块时,可以将这个模块上改动的代码设置到一个文件夹中,然后再一起祈祷)
Move to Another ChangeList

3.查看提交信息

在这里可以查看提交信息

四、项目分支设置的入口

如果使用Git版本控制的话,可以看到右下角上有相关的控制入口
控制入口

五、Gitlab的使用

Gitlab跟Github类似,都是代码托管的网站,最大的不同是Gitlab创建的项目可以免费私有的,不必像Github那样收费,而且Gitlab还可以搭建自己的私服。所以开源项目一般都是放置在Github,个人私有项目可以放置在公网的Gitlab上,而公司私有的项目可以放置在自己搭建的Gitlab上。

1.创建项目

2.对项目进行操作

项目创建完后,可以点击左上角进行查看
这里写图片描述
点击Project,可以看到项目的列表
项目列表
可以为项目添加一个README.md
这里写图片描述
接着可以将指定的项目clone下来,下面是通过用户名和密码的方式clone下来
复制clone连接

接着在IntellIj-IDEA上使用Git将其Clone下来
选择git
如上图,check out项目的时候因为不是Github,所以不再选择Github,而是选择普通的Git来将项目clone下来
输入相关的配置
最后输入密码,再将其clone下来
输入密码
clone下来后,项目结构如下:
项目结构
这时候就可以进行正常的add、commit、push操作了

3.将项目发布到gitlab上

先在本地创建一个项目
先将项目添加到版本控制中
这里写图片描述
添加到版本控制后,我们可以看到文件都变成绿色了
添加到版本控制中
接着往本地提交项目
这里写图片描述
填写提交的相关信息
提交代码到本地
注意perform code analysis 就不要勾选了,这个选项会自动检查代码,会很慢
接着将项目push到服务器中
下面点击push
点击push
接下来需要定义远程的服务
设置远程的服务
此时需要再弹出框中设置url,我们先在gitlab新建一个project,这样的目的是为了获得相关的url
填写url后,再点击push
点击push
此时还需要填写gitlab上的密码
这里写图片描述
push成功后,会出现这样的提示,这是成功的提示:
成功的提示
再查看gitlab上的项目信息,可以看到提交的代码,具体如下图
这里写图片描述


推荐阅读
  • 本文介绍了如何在iOS应用中自定义导航栏按钮,包括使用普通按钮和图片生成导航条专用按钮的方法。同时,探讨了在不同版本的iOS系统中实现多按钮布局的技术方案。 ... [详细]
  • Nginx 反向代理与负载均衡实验
    本实验旨在通过配置 Nginx 实现反向代理和负载均衡,确保从北京本地代理服务器访问上海的 Web 服务器时,能够依次显示红、黄、绿三种颜色页面以验证负载均衡效果。 ... [详细]
  • 本文探讨了如何通过预处理器开关选择不同的类实现,并解决在特定情况下遇到的链接器错误。 ... [详细]
  • iOS 开发技巧:TabBarController 自定义与本地通知设置
    本文介绍了如何在 iOS 中自定义 TabBarController 的背景颜色和选中项的颜色,以及如何使用本地通知设置应用程序图标上的提醒个数。通过这些技巧,可以提升应用的用户体验。 ... [详细]
  • 交互式左右滑动导航菜单设计
    本文介绍了一种使用HTML和JavaScript实现的左右可点击滑动导航菜单的方法,适用于需要展示多个链接或项目的网页布局。 ... [详细]
  • Django xAdmin 使用指南(第一部分)
    本文介绍如何在Django项目中集成和使用xAdmin,这是一个增强版的管理界面,提供了比Django默认admin更多的功能。文中详细描述了集成步骤及配置方法。 ... [详细]
  • 采用IKE方式建立IPsec安全隧道
    一、【组网和实验环境】按如上的接口ip先作配置,再作ipsec的相关配置,配置文本见文章最后本文实验采用的交换机是H3C模拟器,下载地址如 ... [详细]
  • NTP服务器配置详解:原理与工作模式
    本文深入探讨了网络时间协议(NTP)的工作原理及其多种工作模式,旨在帮助读者全面理解NTP的配置参数和应用场景。NTP是基于RFC 1305的时间同步标准,广泛应用于分布式系统中,确保设备间时钟的一致性。 ... [详细]
  • 在 Android 开发中,通过 Intent 启动 Activity 或 Service 时,可以使用 putExtra 方法传递数据。接收方可以通过 getIntent().getExtras() 获取这些数据。本文将介绍如何使用 RoboGuice 框架简化这一过程,特别是 @InjectExtra 注解的使用。 ... [详细]
  • 本文将详细介绍多个流行的 Android 视频处理开源框架,包括 ijkplayer、FFmpeg、Vitamio、ExoPlayer 等。每个框架都有其独特的优势和应用场景,帮助开发者更高效地进行视频处理和播放。 ... [详细]
  • 深入解析Spring启动过程
    本文详细介绍了Spring框架的启动流程,帮助开发者理解其内部机制。通过具体示例和代码片段,解释了Bean定义、工厂类、读取器以及条件评估等关键概念,使读者能够更全面地掌握Spring的初始化过程。 ... [详细]
  • 在编译BSP包过程中,遇到了一个与 'gets' 函数相关的编译错误。该问题通常发生在较新的编译环境中,由于 'gets' 函数已被弃用并视为安全漏洞。本文将详细介绍如何通过修改源代码和配置文件来解决这一问题。 ... [详细]
  • springMVC JRS303验证 ... [详细]
  • 本文探讨了一个特定于 Spring 4.2.5 的问题,即在应用上下文刷新事件(ContextRefreshedEvent)触发时,带有 @Transactional 注解的 Bean 未能正确代理事务。该问题在 Spring 4.1.9 版本中正常运行,但在升级至 4.2.5 后出现异常。 ... [详细]
  • Windows 环境下安装 Git 并连接 GitHub 的详细步骤
    本文详细介绍了如何在 Windows 系统中安装 Git 工具,并通过配置 SSH 密钥实现与 GitHub 的安全连接。包括下载、安装、环境配置及验证连接等关键步骤。 ... [详细]
author-avatar
游走的小张
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有