IDEA Git常见用法

前言

最近开发环境变成了ubuntu + IntelliJ IDEA。之前都是在Windows上使用TortoiseGit(用法可参考Git客户端(TortoiseGit)基本使用详解),而在ubuntu上无法安装TortoiseGit,并且Git命令行使用起来也不是很方便,所以最终决定使用IDEA自带的Git工具。网上相关的文章很多,但不是很全,自己操作了一遍,记录下使用方法。

 

一、在IDEA中配置Git

1、使用Git当然需要先安装Git,安装过程就不详细说明了。安装之后,点击File -> settings,搜索Git,如下图是我设置好的:

2、选择好路径之后,点击右侧的 Test 按钮,弹出版本号则表示配置成功。如下:

 

 

二、克隆项目

1、打开IDEA,点击Check out from Version Control -> Git,弹出框:

2、在URL中输入 github 或者 gitlab 地址,在Directory中选择本机存放的地址,点击Clone,弹出登录框:

3、输入对应平台用户名密码,点击 Log In,就可以将远端代码拉取到本地了

 

三、提交代码(commit and push)

1、新建一个文件Test.txt,此时文件名是红色的。右键Module名称(也可以右键单个文件),选择 Git -> Add:

此时文件名变成了绿色,表示该文件已加入Git管理:

2、选择 Git -> Commit Directory,可以看到我们本次需要提交的文件:

3、点击Commit,本次修改就提交到仓库(可以看到文件名变成正常颜色了)

注意:提交时,一定要填写Commit Message,记录本次提交改动了什么(如果公司有提交日志规范的,需要按照规范来)

4、选择Git -> Repository -> Push,将本地仓库代码推送的远程仓库:

 

四、创建/切换分支

1、选择Git -> Repository -> Branches,弹出框:

2、可以看到当前只有一个分支,分支名是master。点击New Branch,创建一个新分支:

 

3、点击OK后,再次选择Git -> Repository -> Branches,可以看到多了一个新分支my_branch,并且当前分支也是my_branch(当前分支前有一个图标)

4、点击 master 分支右边的小三角,可以看到一些操作(具体如下图所示)。点击Checkout,可以切换到master分支

 

 

五、暂存(stash)、暂存还原(unstash)

使用场景:当想切换分支,但当前分支有些代码又不想 commit。如果此时直接切换分支,会将当前分支上新增的代码直接带到其它分支,为了避免出现这种情况就可以使用 stash 功能。

stash 是将当前分支还不想提交的内容(该内容一定要受 git 管理,比如新增文件没有执行add,则stash就不会生效)暂存起来,也就是还原成修改之前。此时切换到其它分支就不会将内容带过去,同时切回来后,也可以在该分支将内容恢复。

1、修改Test.txt文件内容,同时新增文件Test2.txt:

2、选择Git -> Repository ->Stash Changes,弹出框:

 3、在 Message 中,输入一个唯一标识,然后点击Create Stash,会发现修改和新增的文件内容还原了:

4、此时可以切换到其它分支,然后切回来。选择Git -> Repository ->UnStash Changes,弹出框:

 

5、点击Pop Stash,会发现之前所有修改的内容全部还原了。

 

六、内容比较(Compare With)、回退(Revert)、查看历史(Show History)

1、在Test.txt文件中,修改文件内容。右键文件,选择Git -> Compare With,弹出:

2、点击上面的一行,可以看到当前文件改动了什么,即当前文件与本地仓库文件进行对比。如下:

如果是与其它分支进行对比,可以选择Git -> Compare With Branch。

3、如果想回退到本地仓库内容,可以选择Git -> Revert,弹出框:

点击Rever,文件就回退了(直接点击弹出框中的文件,也可以看到对比信息)

4、如果想查看提交记录,可以右键文件,然后选择 Git -> Show History。弹出框:

5、右键某一条提交记录,可以看到:

 

七、其它

1、文明颜色代表含义:

    红色:未被版本控制的文件

    绿色:新加入版本的文件,即我们新创建的文件,还未提交到远程仓库

    蓝色:修改过的文件,即远程仓库中已有该文件,本次对它进行了修改,但是还未提交

2、Git -> Repository下,其它操作:

    Fetch:从远程拉取最新其它分支

    Pull:从远程拉取最新代码(push前最好先执行pull)

    Merge Changes:将远端分支的代码合并到当前分支

3、Git客户端(TortoiseGit)基本使用详解

 

posted @ 2021-05-16 20:32  仅此而已-远方  阅读(1460)  评论(0编辑  收藏  举报