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

相关文章

使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)

《使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)》在现代软件开发中,处理JSON数据是一项非常常见的任务,无论是从API接口获取数据,还是将数据存储为JSON格式,解析... 目录1. 背景介绍1.1 jsON简介1.2 实际案例2. 准备工作2.1 环境搭建2.1.1 添加

如何使用celery进行异步处理和定时任务(django)

《如何使用celery进行异步处理和定时任务(django)》文章介绍了Celery的基本概念、安装方法、如何使用Celery进行异步任务处理以及如何设置定时任务,通过Celery,可以在Web应用中... 目录一、celery的作用二、安装celery三、使用celery 异步执行任务四、使用celery

使用Python绘制蛇年春节祝福艺术图

《使用Python绘制蛇年春节祝福艺术图》:本文主要介绍如何使用Python的Matplotlib库绘制一幅富有创意的“蛇年有福”艺术图,这幅图结合了数字,蛇形,花朵等装饰,需要的可以参考下... 目录1. 绘图的基本概念2. 准备工作3. 实现代码解析3.1 设置绘图画布3.2 绘制数字“2025”3.3

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

python使用watchdog实现文件资源监控

《python使用watchdog实现文件资源监控》watchdog支持跨平台文件资源监控,可以检测指定文件夹下文件及文件夹变动,下面我们来看看Python如何使用watchdog实现文件资源监控吧... python文件监控库watchdogs简介随着Python在各种应用领域中的广泛使用,其生态环境也

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

springboot整合 xxl-job及使用步骤

《springboot整合xxl-job及使用步骤》XXL-JOB是一个分布式任务调度平台,用于解决分布式系统中的任务调度和管理问题,文章详细介绍了XXL-JOB的架构,包括调度中心、执行器和Web... 目录一、xxl-job是什么二、使用步骤1. 下载并运行管理端代码2. 访问管理页面,确认是否启动成功

使用Nginx来共享文件的详细教程

《使用Nginx来共享文件的详细教程》有时我们想共享电脑上的某些文件,一个比较方便的做法是,开一个HTTP服务,指向文件所在的目录,这次我们用nginx来实现这个需求,本文将通过代码示例一步步教你使用... 在本教程中,我们将向您展示如何使用开源 Web 服务器 Nginx 设置文件共享服务器步骤 0 —

Java中switch-case结构的使用方法举例详解

《Java中switch-case结构的使用方法举例详解》:本文主要介绍Java中switch-case结构使用的相关资料,switch-case结构是Java中处理多个分支条件的一种有效方式,它... 目录前言一、switch-case结构的基本语法二、使用示例三、注意事项四、总结前言对于Java初学者

Golang使用minio替代文件系统的实战教程

《Golang使用minio替代文件系统的实战教程》本文讨论项目开发中直接文件系统的限制或不足,接着介绍Minio对象存储的优势,同时给出Golang的实际示例代码,包括初始化客户端、读取minio对... 目录文件系统 vs Minio文件系统不足:对象存储:miniogolang连接Minio配置Min