IntelliJ-IDEA和Git、GitHub、Gitlab的使用
一、基本入门
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客户端
2.配置Github
下面是选择账号和密码登录
3.clone项目从Github上
接着可以将GitHub上的项目checkout下来
如果GitHub上有多个项目的话,那么可以选择其中的一个
点击clone后,IntelliJ-IDEA就会开始clone项目
4.将本地项目上传到Github上
选择Import into Version Control
然后填写相关的信息
这时候会提示你选择上传的文件
仓库创建成功后,会出现如下的提示
再看GitHub下,多了一个项目仓库
点击进去,项目的相关结构如下
二、版本控制的主要操作按钮
git的操作的入口如下:
也可以在工具栏中进行操作
注意这五个按钮
五个按钮的功能如下:
- 第一个按钮:Update Project 更新项目。
- 第二个按钮:Commit changes 提交项目上所有变化文件。点击这个按钮不会立马提交所有文件,而是先弹出一个被修改文件的一个汇总框,具体操作下面会有图片进行专门介绍。
- 第三个按钮:Compare with the Same Repository Version 当前文件与服务器上该文件通版本的内容进行比较。如果当前编辑的文件没有修改,则是灰色不可点击。
- 第四个按钮:Show history 显示当前文件的历史记录。
- 第五个按钮:Revert 还原当前被修改的文件到未被修改的版本状态下。如果当前编辑的文件没有修改,则是灰色不可点击。
具体作用如下,如下面添加了一行,如果不满意,可以还原
但是如果想提交的话,可以选择这个
填写相关的信息后,可以直接选择commit和push
点击push
提交完毕后,我们可以查看相关的记录
可以看到如下的记录
这时候GitHub上项目就会出现相关的信息了
三、版本控制的常用设置
1.Version Control面板
1. 代表这个项目的版本控制是GIT
2. Show directories with changed descendants 表示子目录有文件被修改了,则该文件的所有上层目录都显示版本控制被修改的颜色(建议勾选)
2.Confimation确认信息面板
添加新文件和删除文件的提示
3.Ignored Files面板
这个是设置不添加到版本控制的文件
4.commit文件的面板介绍
commit文件的时候会出现如下的面板
1.show Diff
show Diff可以比较本地跟服务器文件的不同
2.Move to Another ChangeList
这个选项可以将改动的文件分门别类的放置在一个文件夹中,等修改完毕,可以一起提交(一般用在分模块开发上,也就是开发完一个模块时,可以将这个模块上改动的代码设置到一个文件夹中,然后再一起祈祷)
3.查看提交信息
四、项目分支设置的入口
如果使用Git版本控制的话,可以看到右下角上有相关的控制入口
五、Gitlab的使用
Gitlab跟Github类似,都是代码托管的网站,最大的不同是Gitlab创建的项目可以免费私有的,不必像Github那样收费,而且Gitlab还可以搭建自己的私服。所以开源项目一般都是放置在Github,个人私有项目可以放置在公网的Gitlab上,而公司私有的项目可以放置在自己搭建的Gitlab上。
1.创建项目
2.对项目进行操作
项目创建完后,可以点击左上角进行查看
点击Project,可以看到项目的列表
可以为项目添加一个README.md
接着可以将指定的项目clone下来,下面是通过用户名和密码的方式clone下来
在
接着在IntellIj-IDEA上使用Git将其Clone下来
如上图,check out项目的时候因为不是Github,所以不再选择Github,而是选择普通的Git来将项目clone下来
最后输入密码,再将其clone下来
clone下来后,项目结构如下:
这时候就可以进行正常的add、commit、push操作了
3.将项目发布到gitlab上
先在本地创建一个项目
先将项目添加到版本控制中
添加到版本控制后,我们可以看到文件都变成绿色了
接着往本地提交项目
填写提交的相关信息
注意perform code analysis 就不要勾选了,这个选项会自动检查代码,会很慢
接着将项目push到服务器中
下面点击push
接下来需要定义远程的服务
此时需要再弹出框中设置url,我们先在gitlab新建一个project,这样的目的是为了获得相关的url
填写url后,再点击push
此时还需要填写gitlab上的密码
push成功后,会出现这样的提示,这是成功的提示:
再查看gitlab上的项目信息,可以看到提交的代码,具体如下图
IntelliJ-IDEA和Git、GitHub、Gitlab的使用的更多相关文章
- git,github,gitlab,码云的区别
git 是版本控制工具. github https://github.com/和gitlab https://about.gitlab.com/都是基于git仓库的web开发流程代码托管平台.两者的区 ...
- 【GIT-精讲】从零玩转Git/GitHub/GitLab
关于版本控制 一.什么是版本控制 版本控制(Version Control Systems)版本控制(Revision control)是一种软件工程技巧 在开发的过程中,确保由不同人所编辑的同一档案 ...
- 本地Git仓库与GitHub/GitLab仓库同步
本地仓库即为在你的电脑上的项目文件,远程仓库即为服务器仓库,如GitHub.GitLab或其他等.此处以GitHub介绍本地仓库与远程仓库的同步.可先创建本地仓库,也可先创建GitHub仓库,但都需要 ...
- github/gitlab 管理多个ssh key
github/gitlab 管理多个ssh key 以前只使用一个 ssh key 在github上提交代码,由于工作原因,需要再添加一个ssh key在公司的 gitlab上提交代码,下面记录下配置 ...
- Intellij 中的git操作 转!
http://blog.csdn.net/lovesummerforever/article/details/50032937 Git原理以后会分章节介绍,本次主要说一下intellij怎样操作git ...
- CentOS7上GitHub/GitLab多帐号管理SSH Key
由于公司团队使用 GitLab 来托管代码,同时,个人在 Github 上还有一些代码仓库,可公司邮箱与个人邮箱是不同的,由此产生的 SSH key 也是不同的,这就造成了冲突 ,文章提供此类问题的解 ...
- Eclipse / Intellij Idea配置Git+Maven+Jetty开发环境
作者:鹿丸不会多项式 出处:http://www.cnblogs.com/hechao123 转载请先与我联系. 最近公司给加配了Mac,本想着花一个小时的时间搭好开发环境,最后全部弄好却用了一上午 ...
- 【Linux】配置SSH Key到GitHub/GitLab
Linux配置SSH Key到GitHub/GitLab 准备工作 首先检查下本机是否已经安装了SSH,在终端输入ssh即可: 如果没有安装进行yum安装 # yum -y install opens ...
- Git和Gitlab在使用过程中所遇到的问题
01-关于gitLab添加ssh key后,git clone还提示输入密码问题 本地用户连接远程仓库需要用 HTTP方式连接,SSH方式会出现提示输入密码 git clone http://.... ...
- Intellij IDEA创建git,maven的SpringMVC项目
Intellij IDEA创建git,maven的SpringMVC项目 原文链接:http://www.cnblogs.com/blog5277/p/8906120.html 原文作者:博客园--曲 ...
随机推荐
- Elegant Construction---hdu5813(构造图)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5813 题意是:有n个点,每个点都能到达num个点,让我们构造任意一个有向图满足条件,即:使得 i 能到 ...
- 启动rabbitmq,提示ERROR: node with name "rabbit" already running on "localhost"
➜ ~ rabbitmq-server ERROR: node with name "rabbit" already running on "localhost" ...
- git更新代码报错,error: The following untracked working tree files would be overwritten by ch
git忽略大小写导致的, git config --add core.ignorecase true
- 源代码下载 作者:王先荣(Xianrong Wang)
作者:王先荣(Xianrong Wang) 下面是我的一些源代码: 1. 图像处理学习系列源代码——包括该系列文章的几乎所有代码: 1.5. 图像处理学习系列中用到的dll文件包——将这个解压缩之后放 ...
- 机器学习理论基础学习10--- 高斯混合模型GMM
一.什么是高斯混合模型? 高斯混合模型(Gaussian Mixed Model)指的是多个高斯分布函数的线性组合,理论上GMM可以拟合出任意类型的分布,通常用于解决同一集合下的数据包含多个不同的分布 ...
- 浅谈Java中的初始化和清理
引言 这篇文章我们主要介绍Java初始化和清理的相关内容,这些内容虽然比较基础,但是还是在这边做一个简单的总结,方便以后查阅. 初始化过程 Java尽力保证:所有变量在使用之前都会得到恰当的初始化(对 ...
- 浅谈Android View滑动和弹性滑动
引言 View的滑动这一块在实际开发中是非常重要的,无论是优秀的用户体验还是自定义控件都是需要对这一块了解的,我们今天来谈一下View的滑动. View的滑动 View滑动功能主要可以使用3种方式来实 ...
- Mysql查询一个表的所有字段名
select COLUMN_NAME from information_schema.`COLUMNS` -- 这行不变,照抄 where TABLE_SCHEMA = 'xerp' ...
- SQL查询遍历数据方法一 [ 临时表 + While循环]
以下以SQL Server 2000中的NorthWind数据库中的Customers表为例, 用 临时表 + While循环 的方法, 对Customers表中的CompanyName列进行遍历 c ...
- mysql重做日志
一.重做日志(redo log) 1.作用 确保事务的持久性. 防止在发生故障的时间点,尚有脏页未写入磁盘,在重启mysql服务的时候,根据redo log进行重做,从而达到事务的持久性这一特性. 2 ...