DevOps
开源文化 ThingsBoard 开源中间件 Kubernetes DevOps KubeEdge EdgeX Foundry Node-RED
Documentation > Git管理 > IDEA

On this page

IDEA

一、基础

1.定位Git程序

2.配置Git忽略文件

2.1.Eclipse 忽略文件

2.2.gitignore插件

1.在idea中安装gitignore插件

点击File->Settings ,选择plugs,在右边搜索:.ignore,点击Install,安装完成后就可以愉快的使用了,不过在此之前得重启IDEA

2.现在项目中生成模板

在项目上右键->New ->.ignore file ->.gitignore file(Git)

在项目所在目录下生成文件:.gitignore

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# .gitignore


# Created by .ignore support plugin (hsz.mobi)
### Java template
# 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*

或者选择自动追加到忽略文件中

3.添加的.gitignore可能不起作用

4、添加的.gitignore可能不起作用

  • 要先进入项目包所在的文件夹
  • git rm -r -cached .
  • git add .
  • git commit -m “update .gitignore”
1
2
3
4
5
git rm -r --cached .
git add .
#注意: "update .gitignore" Linux是单引号,windows是双引号
git commit -m "update .gitignore"
git push -u origin master

2.3.IDEA 忽略文件

1.IDEA特定文件

2.Maven 工程的 target 目录

问题 1:为什么要忽略他们? 答: 与项目的实际功能无关,不参与服务器上部署运行。把它们忽略掉能够屏蔽 IDE 工具之 间的差异。

问题 2:怎么忽略? 1) 创建忽略规则文件 xxxx.ignore(前缀名随便起,建议是 git.ignore) 这个文件的存放位置原则上在哪里都可以,为了便于让~/.gitconfig 文件引用,建议也放在用 户家目录下 (C:\Users\Administrator)

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# 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 的家目录中 C:\Users\Administrator)

1
2
3
4
5
6
7
[user]
	name = hollysys
	email = hollysys@126.com
[core]
    excludesfile = C:/Users/Administrator/git.ignore

# 注意:这里要使用“正斜线(/)”,不要使用“反斜线(\)”

3.IDEA集成GitLab

3.1.安装GitLab插件

在File => Settings => Plugins 里面 搜索 gitlab

安装后重启

3.2.设置GitLab插件

Token:AVdN7mbs_4DzXFg6vSoH

3.3.推送本地代码到 GitLab 远程库

自定义远程连接

选择 gitlab 远程连接,进行 push。

SSH方式不需要输入密码

http方式:首次向连接 gitlab,需要登录帐号和密码。

代码 Push 成功。

3.4.克隆远程仓库代码到本地

3.5.拉取远程仓库代码

4.IDEA集成GitHub

4.1.设置 GitHub 账号

4.2.分享工程到 GitHub

来到 GitHub 中发现已经帮我们创建好了 git-idea 的远程仓库。

4.3.推送本地库到远程库

1.GitHub上创建项目git-idea

2.推送本地代码

注意:

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

4.4.拉取远程库到本地库

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

4.5.克隆远程库到本地

二、实践

1.创建Spring Boot项目

1.1.IDEA中创建项目

项目名称:git-idea

1
2
3
4
5
6
7
8
9
10
11
12
13
14
@RestController
public class HelloController {

    @RequestMapping(value = "/hello", method = RequestMethod.GET)
    public String hello() {

        String version = "V1";
        System.out.println("v1---commit!!!");


        return "-------" + version + "-------";
    }

}
1
2
3
# 访问地址:

http://localhost:8888/hello

1.2.GitLab中创建项目

项目名称:git-idea

1
2
3
4
5
# 地址
git@172.17.243.237:hs-group/git-idea.git

http://172.17.243.237:18080/hs-group/git-idea.git
zhangsan/zhangshan123

2.初始化本地仓库

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

3.添加到暂存区

右键点击项目选择 Git -> Add 将项目添加到暂存区。

4.提交到本地仓库

5.切换版本

5.1.修改两次版本

5.2.切换版本

在 IDEA 的左下角,点击 Version Control,然后点击 Log 查看版本

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

6.创建分支

选择 Git, 在 Repository 里面,点击 Branches 按钮。

在弹出的 Git Branches 框里, 点击 New Branch 按钮。

填写分支名称,创建 hot-fix 分支。

然后再 IDEA 的右下角看到 hot-fix,说明分支创建成功,并且当前已经切换成 hot-fix 分支

7.分支切换

在 IDEA 窗口的右下角,切换到 master 分支

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

8.合并分支

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

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

9.解决冲突

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

参考说明

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

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

10.Git标签

10.1.创建标签

10.2.远程推送标签

由于不是在当前最新版本打入的标签,push时需要选择push tags (all),不然不能push

GitLab查看

10.3.检出标签

注意:此时的软件版本不让修改

10.4.在指定标签继续开发

10.5.删除标签

在idea中由于没有找到删除标签的功能,所以只能采用命令行的方式进行。

  1. 进入工程目录–>右键,Git Bash Here进入命令窗口
  2. 删除本地标签命令 git tag -d v1.1.0
  3. 删除远程标签命令 git push origin :refs/tags/v1.1.0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Administrator@DESKTOP-AV12NNP MINGW64 /d/dev-tct/Devops/dev/code/git-idea (master)
$ git tag
v1.0.0
v1.1.0


# 删除本地标签
Administrator@DESKTOP-AV12NNP MINGW64 /d/dev-tct/Devops/dev/code/git-idea (master)
$ git tag -d v1.1.0
Deleted tag 'v1.1.0' (was b413108)

Administrator@DESKTOP-AV12NNP MINGW64 /d/dev-tct/Devops/dev/code/git-idea (master)
$ git tag
v1.0.0


# 删除远程标签
Administrator@DESKTOP-AV12NNP MINGW64 /d/dev-tct/Devops/dev/code/git-idea (master)
$ git push origin :refs/tags/v1.1.0
To 182.92.210.65:hs-group/git-idea.git
 - [deleted]         v1.1.0