快速上手Git

目录

一、Git概述

二、Git的常用命令 

Git全局配置

获取Git仓库 

基本概念 

本地仓库操作

远程仓库操作 

分支操作

标签操作 

三、在IDEA中使用Git 

在IDEA中配置Git

本地仓库操作

远程仓库操作 

分支操作 

冲突解决 


一、Git概述

Git是一个分布式版本控制工具,主要用于管理开发过程中的源代码文件(Java类、xml类、html页面等)。

通过Git仓库可以存储和管理这些文件,Git仓库分为如下两种:

  • 本地仓库:开发人员自己电脑上的Git仓库;
  • 远程仓库:远程服务器上的Git仓库

Git所具备的功能:

  • 代码回溯;
  • 版本切换;
  • 多人协作;
  • 远程备份; 

常用术语解释:

  • commit:提交,将本地文件和版本信息保存到本地仓库;
  • push:推送,将本地仓库文件和版本信息长传到远程仓库;
  • pull:拉取,将远程仓库文件和版本信息下载到本地仓库;

Git的下载地址:https://git-scm.com//download

Git的代码托管服务,通常借助互联网上提供的一些代码托管服务来实现,比较常见的有Github、码云(gitee)、GitLab等

以使用码云的操作步骤为例:

  1. 注册码云账号;
  2. 登录码云;
  3. 创建远程仓库;
  4. 邀请其他用户成为仓库成员;

二、Git的常用命令 

Git全局配置

当Git安装成功后首先要做的是事情就是设置用户名称和邮箱地址,因为每次Git提交时都会使用该用户信息。

设置用户信息:

  • git config --global user.name "xx"
  • git config --global user.email "xx"

注意:上面的user.name和user.email并不是注册码云账号时使用的用户名和邮箱,此处可以任意设置。

查看配置信息:

  • git config --list

获取Git仓库 

获取Git仓库通常有两种方式:

  • 从本地初始化一个Git仓库;
  • 从远程仓库进行克隆;

从本地初始化一个Git仓库的基本步骤:

  1. 在任意目录下创建一个空目录作为本地的Git仓库
  2. 进入目录后,点击右键打开Git bash窗口
  3. 执行命令 git init

创建成功后文件夹就会增加一个.git文件夹,此文件夹是隐藏的项目

从远程仓库进行克隆:

命令形式:git clone "远程Git仓库地址"

基本概念 

版本库:之前创建的.git隐藏文件夹就是版本库,版本库中存储了许多配置信息、日志信息和文件版本信息等;

工作区:包含.git文件夹的目录就是工作区,主要用于存放开发的代码

暂存区:本地仓库中的一个特殊的文件(index) 叫做暂存区,临时存储我们即将要提交的文件

查看文件状态的命令:git status

Git工作区的文件存在两种状态:

untracked:未跟踪,未被纳入版本控制;

tracked:已跟踪,被纳入版本控制

        unmodified:未修改状态

        modified:已修改状态

        staged:已暂存状态

本地仓库操作

本地仓库的常见命令:

  • git status 查看文件状态
  • git add 将文件的修改加入暂存区
  • git reset 将暂存区的文件取消暂存或者是切换到指定版本
  • git commit 将暂存区的文件修改提交到版本库
  • git log 查看日志

远程仓库操作 

远程仓库的常见命令:

  • git remote 查看远程仓库
  • git remote add 添加远程仓库
  • git clone 从远程仓库克隆
  • git pull 从远程仓库拉取
  • git push 推送到远程仓库

分支操作

分支是Git 使用过程中非常重要的概念。使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。

本地仓库和远程仓库中都有分支,同一个仓库可以有多个分支,各个分支相互独立,互不干扰。

通过git init 命令创建本地仓库时默认会创建一个master分支。

分支相关的一些常用指令如下:

  • git branch:查看分支
  • git branch 【name】:创建分支
  • git checkout 【name】:切换分支
  • git push 【shortName】 【name】:推送至远程仓库分支
  • git merge 【name】:合并分支
  • git branch -d 【name】:删除分支

标签操作 

Git中的标签指的是某个分支某个特定时间点的状态,通过标签,可以很方便地切换到标记时的状态。

标签的一些常见命令如下:

  • git tag:列出已有的标签
  • git tag 【name】:创建标签
  • git push 【shortName】【name】:将标签推送至远程仓库
  • git checkout -b 【branch】【name】:检出标签

三、在IDEA中使用Git 

在IDEA中配置Git

在IDEA中使用Git,本质上还是需要使用本地安装的Git软件,所以需要在IDEA中配置Git。

本地仓库操作

在IDEA中使用Git获取仓库有两种方式:

  • 本地初始化仓库
  • 从远程仓库克隆

本地初始化仓库(不同版本的Idea按钮位置不同):

会出现Git的工具栏:

在提交Git时一般只提交源码文件,所以在项目中可以创建一个.gitignore来进行配置不想提交的文件:

那么在git commit时就会忽略配置中的文件,那么就能选择要提交的文件并进行备注信息:

右击项目后点击Git就可以进行相关操作:

从远程仓库克隆:

远程仓库操作 

首先需要在远程先创建一个仓库,得到远程仓库的地址;

接着在idea中点击Git并选择Manage Remotes,然后在填入远程仓库地址:

如果提交就进行push:

如果需要更新则选择update按钮进行更新:

分支操作 

在IDEA中的分支一般出现在右下角:

关于分支的一些其他操作可以右击分支来选择:

冲突解决 

代码冲突是指在版本控制系统(如Git)中,当多个用户同时修改同一文件的同一部分时所产生的冲突。

那么在发生冲突之后就需要选择代码到底是使用那个版本了,就需要进行沟通确认

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/656340.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kubernetes Ingress 用法

Service的表现形式为IP地址端口号的方式,即工作在TCP/IP层,而对于基于HTTP的服务来说,Service机制很难实现,7层应用的复杂转发逻辑。kubernetes在1.1版本开始引入ingress资源对象,用于将集群外部的客户端请求路由到集群…

http代理与socks5代理有什么差异,http代理出现502错误如何修复?

一、HTTP代理与SOCKS5代理的差异HTTP代理和SOCKS5代理都是网络代理服务的两种主要类型,但它们在实现方式和应用场景上存在明显的差异。1.协议差异HTTP代理基于HTTP协议,是一种应用层代理,主要用于代理HTTP请求和响应。而SOCKS5代理则基于SOCK…

js实现贪吃蛇

文章目录 实现方法_11实现效果2 实现步骤2.1 移动场地2.2 游戏难度2.3 造蛇和食物2.4 蛇的移动2.5 产生食物的随机位置 3 全部代码 实现方法_21 实现效果2实现想法2.1 蛇的存储和显示2.2 蛇的移动(重难点)2.3 吃食物 3 完整代码 实现方法_1 1实现效果 2 实现步骤 html部分忽略…

java heap dump文件简单快速查看

如何 查看 堆内存的对象占用情况 1 准备工具: idea , 2、 步骤: 1、jmap 或者其他工具,获取到 heap 快照 2、更改该文件的后缀名为 xxxx.hprof 3、用idea open 这个文件 如图: 5、点击biggest tab , calculate xxxx 即可…

Flask 入门1:一个简单的 Web 程序

1. 关于 Flask Flask诞生于2010年, Armin Ronacher的一个愚人节玩笑。不过现在已经是一个用python语言基于Werkzeug工具箱编写的轻量级web开发框架,它主要面向需求简单,项目周期短的小应用。 Flask本身相当于一个内核,其他几乎所…

STM32-电动车报警器

STM32-电动车报警器 1.振动传感器点亮LED灯 需求:当振动传感器接收到振动信号时,使用中断方式点亮LED1 //重写中断服务函数,如果检测到EXTI中断请求,则进入此函数 void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) {//一根中断线上接有多个…

JY-7A/3DK/220静态电压继电器 无源型 板前接线

系列型号 JY-7A/1DK不带辅助电源电压继电器;JY-7B/1DK不带辅助电源电压继电器; JY-7/1DK/120不带辅助电源电压继电器;JY-7/1DK/120不带辅助电源电压继电器; JY-7A/1DKQ不带辅助电源电压继电器;JY-7B/1DKQ不带辅助电源…

优秀广大青年欢迎加入

在深在广 年龄在20-35左右 男生工作稳定,幽默,长相帅气,爱好旅行,健身,读书,做饭,摄像,养宠,人心公益等…… 女生青春美丽,暖心贴心,踏实过日子&a…

网络安全知识和华为防火墙

网络安全 网络空间安全 ---Cyberspace 2003年美国提出的网络空间概念 ---一个由信息基础设施组成的互相依赖的网络。 我国官方文件定义:网络空间为继海、陆、空、天以外的第五大人类互动领域。 通信保密阶段 --- 计算机安全阶段 --- 信息系统安全 --- 网络空间安…

Android 中的动态应用程序图标

Android 中的动态应用程序图标 一、需求二、解决方案三、方案实现四、结论 一、需求 您可能遇到过那些可以实现巧妙技巧的应用程序 - 更改应用程序图标(也许是在您的生日那天),然后无缝切换回常规图标。这种功能会激起你的好奇心&#xff0c…

Shell脚本⑦awk

目录 一.awk概述 1.awk介绍 2.基本格式 3.工作原理 4.常见的内建变量 二.awk基本操作 1.打印文本内容 (1)打印磁盘使用情况 (2)打印字符串 (3)打印字符串确定文件有多少行 2.根据$n以及NR提取字…

实战教程:如何用Spring Boot和MySQL存储共享单车数据

✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…

【经典项目】Java入门,实现斗地主小游戏

一、需求分析 实现斗地主游戏可以涉及以下几个关键步骤和思路: 游戏规则定义:首先,你需要明确斗地主游戏的规则,包括牌的花色和大小、玩家数量、发牌顺序、出牌规则、胜利条件等。 牌的表示和初始化:定义一套扑克牌的…

第六讲_JavaScript原型

JavaScript原型 1. 原型的概念2. 原型继承2.1 原型链 3. class类的原型对象 1. 原型的概念 原型是 JavaScript 对象相互继承特性的机制。 每个函数都有一个 prototype 属性,这个属性指向一个对象,这个对象称为原型对象。每个对象都有一个 [[Prototype]…

网络原理-TCP/IP(1)

应用层 我们之前编写完了基本的java socket, 要知道,我们之前所写的所有代码都在应用层中,都是为了完成某项业务,如翻译等.关于应用层,后面会有专门的讲解,在此处先讲一下基础知识. 应用层对应着应用程序,是程序员打交道最多的一层,调用系统提供的网络api写出的代码都是应用层…

纯html+js+css个人博客

首页 <!DOCTYPE HTML> <html> <head> <title>博客</title> <meta http-equiv"Content-Type" content"text/html; charsetutf-8" /> <meta name"viewport" content"widthdevice-width, initial-sca…

TOP100 矩阵

1.73. 矩阵置零 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 提示&#xff1a; m matrix.lengthn matrix[0].length1 < m, n < 200-2^31 < matrix[i][j] < 2^31 - 1 思路&#xf…

SeaTunnel Web安装 一把成

安装相关jar包&#xff0c;以及SeaTunnel 和Web 打成的包&#xff0c;可以直接使用&#xff0c;但是需要安装MySQL客户端的分享&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1qrt1RAX38SgIpNklbQJ7pA 提取码&#xff1a;0kmf 1. 环境准备 环境名称版本系统环境C…

使用EasyPOI模板导出Execl表格(含有图片)

这是生成的文件效果 一、导入依赖 <!--easypoi--><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-base</artifactId><version>4.2.0</version></dependency><dependency><groupId>cn.aft…

零、环境搭建

之前一直玩python的&#xff0c;由于工作需要C版的opencv&#xff0c;故借此寒假闲暇时间&#xff0c;进行简单了解学习。 主要用到的IDE是Visual Studio和OpenCV 一、Visual Studio下载安装 我这里没找到之前的2017版本&#xff0c;就拿目前最新的2023社区版下载&#xff1a…