ideal中使用git总结

2023-11-10 00:10
文章标签 总结 使用 git ideal

本文主要是介绍ideal中使用git总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

两年前使用过这套开发工具,做其他项目换了开发工具,现在再使用竟然全部忘记了,所以还是写篇博文详细记录一下,日后在忘了看一遍也就容易捡起来。

1.git安装
1.1 下载地址: https://git-scm.com/downloads
1.2 安装教程: https://www.cnblogs.com/xueweisuoyong/p/11914045.html

2.拉取项目
2.1 在本地新建一个文件夹mydev(文件夹命名随你),作为检出项目的存放地。
2.2 在mydev文件夹里面鼠标右键,点击git bash,弹出git命令窗口。
2.3 输入git init 命令,初始化git仓库(执行后会在该文件夹下生成一个.git文件夹)。
2.4 配置用户名和邮箱 (作用仅是用于提交代码时的用户标识,所以姓名和邮箱不需要一定是真实的,可以随便写你喜欢的但建议用自己的名字缩写拼音之类的,因为看提交历史记录时显示的是这里配置的name,写个乱七八糟的名字只有你自己晓得,别人都不知道谁提交的代码)

git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"

2.5 git clone + 远程项目的地址,输入你的git账号密码,等待检出完毕。
在这里插入图片描述
2.6 导入项目。打开ideal,点击工具栏的file – open ,找到你新建的目录mydev,选择你要导入的项目即可。
2.7 检出代码的另外一种方式是直接在ideal里面操作,则无需上面的2.5和2.6两个步骤。操作方法如下。工具栏vcs–》 checkout from Version Control – 》 git, 然后第一行输入你的git地址,第二行默认工作空间也就是项目检出的代码存放目录。注第一次检出时,可能会弹出输入git用户名密码的窗口
在这里插入图片描述在这里插入图片描述

3.拉取分支。开发新功能都需要自己拉一个新分支,ideal右下角有一个git的地方,点击一下,第一次会弹出输入git账号密码。输完之后会显示git上的所有分支主干,以master拉一个新分支
在这里插入图片描述
如图,上面是本地分支local baranchs,下面是远程分支remote baranchs,最开始local下面没啥内容只有一个master,remote下面有个master主干,点击show more可以看到更多的远程分支。当新拉分支或者切换分支后,local下面显示的也就越来越多了。远程和本地是独立开来的,二者之间只有拉取和推送的联系,所以开新分支需要先把远程分支拉到本地,再从本地拉出新分支,最后推送到远程。
在这里插入图片描述
如上图从远程分支选择要拉的分支master,右边有个三角形是下拉菜单,再点击checkout as(拉取之意),之后弹出一个框让你输入该分支在本地的别名(别名随便取,不重复就行。我这里命名master1,顺便提一下一个远程分支也是可以拉取多份到本地取不同的别名的),下一步之后本地local baranchs下面就多了一个分支master1,前面白色字体的是你取的别名,后面灰色字体origin/**** 的是对应的远程分支名称。
在这里插入图片描述
然后再选中本地local baranchs下面的master,点击后下拉菜单选checkout as(拉新分支之意)输入新的分支名称(没要求分支名称命名规范可以随便取名自己认识即可)。我这里命名为www20210222,下一步后就会拉出新分支,新分支也会显示在本地分支local baranchs下,此时新拉的分支只显示了前面白色的www20210222,后面没有灰色的origin/www20210222(效果如上图的login2),等你提交代码push推送后也就会显示灰色的origin/www20210222了。

特别注意:

1.本地local branch 下面的分支,点击下拉菜单有 delete删除选项。当本地分支太多了,无用的可以删除一些,但最好别把远程上的也删除了。
2.ideal右下角git处虽然显示的不是master,但要检查一下当前这个分支后面的灰色字体远程分支名,如果显示的是origin/master,千万不要提交推送,因为你是在别名主干上开发的,push后是推送到主干上去了,回退版本太麻烦。
比如
白色字体mybranch1 灰色字体origin/master,不可提交,这是本地的别名主干
白色字体mybranch1 无灰色字体 可提交 是刚新拉的分支还没有过任何提交记录而已
白色字体mybranch1 灰色字体mybranch1 可提交 是已有过提交记录的分支,本次又是在此分支上进行开发
当然也可以在commit 和 push 的时候,如下图检查下要提交的分支是否正确。右边的列表蓝色文件名是你改动的文件,双击文件名可以两本比对详细改动的文本内容。
在这里插入图片描述

4.提交本地分支。
当自己的需求开发完成后就可以提交代码了,咱都是在自己的本地分支上进行改动和远程分支没任何关系,所以咱是先提交到本地分支,然后在推送到远程分支上去,推送后别人才能看到你修改的内容。
在这里插入图片描述
若新增了文件最开始文件名是显示红色的,若修改了文件名由白色显示蓝色。
4.1 选中项目右键,点击git,在点击add,将修改的内容添加到本地缓存(之后再看新增文件的文件名也会变成青色了)。
4.1 选中项目右键,点击git,在点击commit directory提交到本地分支,会弹出一个框,列举了改动的文件,点击文件可以两边比对详细的提交内容,检查下没问题就可以进行提交了。这个步骤和SVN的提交是一样的,唯一的区别的git是只提交到了本地分支,而SVN是直接提交到了远程分支中心代码库。(之后再看新增文件的文件名也会变成白色了)。
5.推送远程。
5.1选中项目右键,点击git,在点击respository,点击pull。把远程库上最新的代码更新下来, 如果出现冲突要先解决。如果不先pull就push则可能会覆盖他人的代码,当然如果这个分支只有自己一个人使用直接push也没关系。
5.2选中项目右键,点击git,在点击respository,点击push。推送完成。
在这里插入图片描述
如上两个步骤pull 和push在右上角有快捷键,直接点击图标也很方便快捷。
这几个步骤总结几个字就是 add、 commit、 推送先pull后push。

6.切换分支
当需要切换分支时,如下图,最右下角的git处显示的是当前分支,点击选取要切的分支www20210222,在点击checkout(切换分支之意)即可,片刻后最右下角的git处显示的是www20210222,则切换成功。
在这里插入图片描述
7.合并分支。
当然两人或者多人开发时候,做完的时候需要合并代码。步骤如下
7.1 本地切换对方分支,pull 拉取最新代码到本地
7.2 切回本地自己分支,选择本地对方分支 下拉菜单选择merger in current ,将对方的代码合并到了自己的分支上
7.3最后 push 到自己的远程分支
如果是往主干上合并,则主干是自己,需求分支是对方。

8.发布
git、ideal、jenkins可以说是一套标配,发布是在jenkins上进行发布。浏览器登录jenkins后看到如下主界面在这里插入图片描述
列表展示的是所有的应用服务,找到自己要部署的应用,点击应用名称进行下一个界面
在这里插入图片描述
点击左侧的build with Parameters,选择要部署的分支和环境,最后点击build按钮即可。jenkins是全量部署的,也就是把整个分支的代码全部编译发布,所以等待的时间也比较长,大约要几分钟才能部署好。

点击build按钮后, build History下面会显示你刚刚部署的(显示有点慢可以手动刷新一下页面),并且有个蓝色的进度条表示部署进度,进度条后面有个小小的灰色叉表示取消部署,进度条前面的圆是一个不断闪烁的红色圆。部署完成后进度条就消失了,和上图构建历史记录下一样,是一个不动的蓝色圆了。如果是个灰色圆,说明被手动取消部署了,如果是个红色圆,说明部署失败了,大多情况不是偶然失败所以在部署也是失败,需要看下启动日志。build History下面找到你部署的那条记录(一般第一条就是),点击#开头的编号或者日期进入下一个页面。
在这里插入图片描述
点击Console Output 可以看到启动日志,一直下拉页面到底部,查看报错日志。点击parameters,可以查看本次部署的信息,部署的是哪个分支,往哪个环境上部署(此解界面与部署时,build with Parameters菜单页面一个模样无部署按钮而已)。

9.其他遇到的问题。

  • 切换分支。当前分支有未提交的,无法切换到别的分支,需先提交。
  • 看不到别人新建的分支。在任意分支上pull拉取一下即可(点击工具栏pull快捷键图标或者项目右键git–respository–pull),则git会从远程服务端读取到最新的信息了。
  • 还原代码。选中整个项目/包/类文件,鼠标右键git – Revert… 会弹出一个框,显示了所有改动的地方,需要还原的前面打钩点击确定就好。
  • 合并代码有冲突解决完之后,发现还有地方没解决对,此时无法在重新合并了。
    如果还没有推送远程,则在本地找到这个项目删掉,之后ideal里面的项目会消失。然后在原文件夹内把项目重新检出,这样这个项目就是干干净净的了,ideal打开此项目,从远程重新拉取这两个分支到本地,即可重新合并。
  • git clone 命令拉取代码失败,提示fatal: Authentication failed for… 。这是提示认证不通过也就是git账号密码不对,比如修改了git密码但本地记录的还是以前的旧密码。执行git config --system --unset credential.helper 把本地的信息清理了,再次执行git clone 命令就会弹窗提示你输入账号密码了。

这篇关于ideal中使用git总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/379277

相关文章

C++使用栈实现括号匹配的代码详解

《C++使用栈实现括号匹配的代码详解》在编程中,括号匹配是一个常见问题,尤其是在处理数学表达式、编译器解析等任务时,栈是一种非常适合处理此类问题的数据结构,能够精确地管理括号的匹配问题,本文将通过C+... 目录引言问题描述代码讲解代码解析栈的状态表示测试总结引言在编程中,括号匹配是一个常见问题,尤其是在

Java中String字符串使用避坑指南

《Java中String字符串使用避坑指南》Java中的String字符串是我们日常编程中用得最多的类之一,看似简单的String使用,却隐藏着不少“坑”,如果不注意,可能会导致性能问题、意外的错误容... 目录8个避坑点如下:1. 字符串的不可变性:每次修改都创建新对象2. 使用 == 比较字符串,陷阱满

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何

使用C++实现链表元素的反转

《使用C++实现链表元素的反转》反转链表是链表操作中一个经典的问题,也是面试中常见的考题,本文将从思路到实现一步步地讲解如何实现链表的反转,帮助初学者理解这一操作,我们将使用C++代码演示具体实现,同... 目录问题定义思路分析代码实现带头节点的链表代码讲解其他实现方式时间和空间复杂度分析总结问题定义给定

Linux使用nload监控网络流量的方法

《Linux使用nload监控网络流量的方法》Linux中的nload命令是一个用于实时监控网络流量的工具,它提供了传入和传出流量的可视化表示,帮助用户一目了然地了解网络活动,本文给大家介绍了Linu... 目录简介安装示例用法基础用法指定网络接口限制显示特定流量类型指定刷新率设置流量速率的显示单位监控多个

JavaScript中的reduce方法执行过程、使用场景及进阶用法

《JavaScript中的reduce方法执行过程、使用场景及进阶用法》:本文主要介绍JavaScript中的reduce方法执行过程、使用场景及进阶用法的相关资料,reduce是JavaScri... 目录1. 什么是reduce2. reduce语法2.1 语法2.2 参数说明3. reduce执行过程

如何使用Java实现请求deepseek

《如何使用Java实现请求deepseek》这篇文章主要为大家详细介绍了如何使用Java实现请求deepseek功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1.deepseek的api创建2.Java实现请求deepseek2.1 pom文件2.2 json转化文件2.2

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

C++ Primer 多维数组的使用

《C++Primer多维数组的使用》本文主要介绍了多维数组在C++语言中的定义、初始化、下标引用以及使用范围for语句处理多维数组的方法,具有一定的参考价值,感兴趣的可以了解一下... 目录多维数组多维数组的初始化多维数组的下标引用使用范围for语句处理多维数组指针和多维数组多维数组严格来说,C++语言没

在 Spring Boot 中使用 @Autowired和 @Bean注解的示例详解

《在SpringBoot中使用@Autowired和@Bean注解的示例详解》本文通过一个示例演示了如何在SpringBoot中使用@Autowired和@Bean注解进行依赖注入和Bean... 目录在 Spring Boot 中使用 @Autowired 和 @Bean 注解示例背景1. 定义 Stud