当前位置: 首页 > news >正文

Git工具的使用

下面写的是我在使用Git来提交代码时遇到的一些经历,可能不全(Git功能)

情景1:自己平时写一个项目,在提交时,都是而放到了主分支中,也不必使用到多人协同来做,这里就不用讨论子分支

Git的本质是一款软件(编译器),类似与在linux的命令窗口,代码风格也可linux的代码风格类似。

所以还没有下载Git软件,就去下载,下载之后可以进行环境变量的配置,也可以不进行环境变量的配置;这个得按你的使用情况来讨论(我的建议是配置环境变量)

 下载好之后,运行,就会发现点击鼠标右键会出现这两个图标,点击第二个会出现如下界面,表示就可以用Git了

(1)环境变量的配置:在环境变量中的path路径下编辑如下路径      D:Git/bin   目录  (如下图)

1.2.3.

 配置环境变量主要是为了,在IDEA编译器中使用控制面板(命令行)操作Git提交代码时,能够生效,如果不配置,会提示 git 既不是内部命令也不是外部命令,不能进行操作;有的程序员,不配置环境变量,通过Git自己的控制面板编辑代码也可以提交成功,只是不再IDEA编译器中提交了;

 配置好后,检查idea编译器中的Git是否设置完成:如下图

 下面这两个是默认配置,看一下即可:

 测试GIT是否可以成功使用,打开项目中的git命令行操作界面:如下图

 注意1:

git  --测试git是否配置成功 

提交代码分为以下几个过程:

a.利用代码 git add . 将要提交的代码提交到暂存区

b.然后利用 git commit -m "注释" 将暂存区中的代码提交到本地Git仓库

c.最后,我们提交代码,都是要提交到远程仓库中的,所以你可以开通(GitHub(国外)/Gitee(国产)),在利用 git push 代码提交到远程仓库中

d.如果你想看你有那些文件向提交,还可以使用 命令 git status 来查看

(2)不配置Git的环境变量可以通过Git自身的命令行操作界面操作(鼠标点击右键)项目的提交到

下载好之后,之间右键打开Git控制面板进行下载远程仓库或者初始化自己新建的本地Git仓库

注意2:

IDEA编译器中集成Git并提交项目到远程仓库:

a.首先需要创建一个远程仓库,模板自己选择就行(例如Java模板)

b.在这里叫一个万能且简单的方法,是IDEA中的项目与远程仓库连接:

首先创建一个文件夹 点击右键打开 Git Bash Here 使用 git clone [url] 来拿到远程仓库,然后将该仓库中的各种文件直接拷贝到 IDEA 编译器中的项目 文件夹下 ,自然该项目也就成了一个 指向该远程仓库,观察到项目界面中有了Git的一些按按钮:如下图

 表示,项目连接远程仓库成功;

最后就是继续编辑项目,并利用git操作指令来提交项目的改变;(方式:1.利用IDEA中的控制面板;2.利用Git自己的控制面板窗口;3.利用IDEA连接好远程仓库后的图标来提交)

注意3:

这里还需要注意一个问题,就是每次在提交到远程仓库时, 也就是在执行 git push 指令时,就会让你输入gitee的用户名、密嘛,就比较麻烦,这里我们需要生成一个公钥来取消该操作;

生成SSH公钥步骤:打开gitee找到生成公钥的位置,然后在c盘Users中找到.ssh文件夹:如下图

 .ssh文件夹中,本来是没有文件的,在这个文件中打开Git bash Here 来执行以下命令操作,

命令执行后(在里面敲击  ssh-keygen -t rsa  命令,后面一路下一步即可,就会创建一个ssh公钥),会生成两个文件(也就是上图文件夹中得文件),用记事本打开后最名为.pub的文件,粘贴复制到gitee中的生成公钥的地方,点击确认,这样就完成了;

这时,选择克隆远程仓库,使用 SSH 模式,而不用 HTTPS 模式

 情景2:多人协作开发项目,用到Git子分支

主分支学会后,子分支较简单,这里不做描述。

后面的可看可不看了,就是Git实战一下

(1)首先在Gitee中创建一个远程仓库:仓库名为:Java面试集合

 (2)在IDEA中创建一个普通的项目,也可以用旧的Java项目

 (3)要想是当前Java项目和远程仓库匹配,先在当前Java项目的同级目录下打开Git Bash Here将远程仓库克隆到本地:

 克隆成功:

(4)在这个空的仓库中创建一些必要的文件如下:

 创建:

因为新创建的项目文件只存在在工作区,可以使用 命令操作 git status 来查看新建的文件的状,态,但是有个注意点,操作Git的路径必须切换到本目录,如下图:

查看修改文件的状态:使用命令 git status

下一步就是将修改后的文件存放到暂存区:操作指令为 git add .

 接下来就是将文件提交到本地仓库:操作指令为 git commit -m "提交描述语"

 最后就是从本地仓库到远程仓库的操作指令:git push

 刷新远程gitee仓库,查看是否成功:

(5) 上面测试提交成功后,下面你就是将该远程仓库中的文件复制到咱们的Java项目中(万能的low比方法,但是最高效),最后咱们的Java项目也就指向了该远程仓库;

 

打开IDEA编译器中的Java项目,观察发现有了Git的一些按钮;

 

(6)测试Java项目的提交到远程仓库

当你进入Java项目时,IDEA已经为我们标识出来了,远程仓库中没有的文件(标位红色的文件),需要我们继续提交,如下图:

a.使用四种提交方式中的:方式一:采用控制台的操作命令行来执行:当然这个需要配置Git的环境变量:

方式二:采用Git图标

 方式三:采用项目中的提交方式:

 方式四:采用Git的控制面板:

 完结撒花

相关文章:

  • 电商订单全流程可观测最佳实践
  • 诸子百家的十二家学派
  • 活动回顾 | Mini XMan线上快闪活动圆满结束!
  • 头条小程序模板全行业合集,头条小程序制作平台分享
  • 基于关联规则的网络信息安全风险度量分析模型
  • Chapter 5 Deep Learning
  • Windows与网络基础-8-windows基本命令-文本操作
  • 元宇宙办公室APP功能系统软件源码开发
  • Kafka监控与指标解析-UnderReplicatedPartitions
  • css:移动端实现1px、0.5px的细线
  • 解决方案|电力行业应如何应对数字化转型危机
  • 使用iptables动态映射Docker容器端口
  • 低代码怎么用?三位一体发挥最大价值!
  • Libra论文阅读笔记-A unified congestion control framework for diverse application
  • Python代码优化工具——memory_profiler
  • $translatePartialLoader加载失败及解决方式
  • co.js - 让异步代码同步化
  • Linux中的硬链接与软链接
  • Spring Boot快速入门(一):Hello Spring Boot
  • supervisor 永不挂掉的进程 安装以及使用
  • Theano - 导数
  • vuex 学习笔记 01
  • 缓存与缓冲
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • 协程
  • 智能合约开发环境搭建及Hello World合约
  • 测评:对于写作的人来说,Markdown是你最好的朋友 ...
  • 第二十章:异步和文件I/O.(二十三)
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • #Js篇:单线程模式同步任务异步任务任务队列事件循环setTimeout() setInterval()
  • (1)Nginx简介和安装教程
  • (70min)字节暑假实习二面(已挂)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第5章第5节(delphi中的指针)
  • (javascript)再说document.body.scrollTop的使用问题
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (牛客腾讯思维编程题)编码编码分组打印下标(java 版本+ C版本)
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (原創) 如何刪除Windows Live Writer留在本機的文章? (Web) (Windows Live Writer)
  • .net core MVC 通过 Filters 过滤器拦截请求及响应内容
  • .net 后台导出excel ,word
  • .NET开源的一个小而快并且功能强大的 Windows 动态桌面软件 - DreamScene2
  • .NET上SQLite的连接
  • .NET使用存储过程实现对数据库的增删改查
  • .NET微信公众号开发-2.0创建自定义菜单
  • [2013][note]通过石墨烯调谐用于开关、传感的动态可重构Fano超——
  • [asp.net core]project.json(2)
  • [BUUCTF]-PWN:wustctf2020_number_game解析(补码,整数漏洞)
  • [ERROR]-Error: failure: repodata/filelists.xml.gz from addons: [Errno 256] No more mirrors to try.
  • [Flex] PopUpButton系列 —— 控制弹出菜单的透明度、可用、可选择状态
  • [ITIL学习笔记]之事件管理(2)
  • [leetcode]_Symmetric Tree
  • [Nginx]反向代理Node将3000端口访问转换成80端口
  • [openGL]在ubuntu20.06上搭建openGL环境
  • [springboot专栏]文件本地上传与提供访问服务
  • [UDS] --- CommunicationControl 0x28