git介绍和使用

目录

一、git概述

1、简介

2、下载安装

二、git代码托管服务

1、常用的 Git 代码托管服务

2、使用码云代码托管服务 

三、git常用命令

1、git全局设置

2、获取git仓库

3、工作区、暂存区、版本库 概念

 4、Git工作区中文件的状态

5、本地仓库操作 

6、远程仓库操作

7、分支操作

8、标签操作

三、在 IDEA 中使用 Git

1、在 IDEA 中配置 Git

2、获取Git仓库

3、本地仓库操作

4、远程仓库操作

5、远程仓库操作 


一、git概述

1、简介

Git是一个分布式版本控制工具,主要用于管理开发过程中的源代码文件(Java类、xml文件、html页面等),在软件开发过程中被广泛使用。代码回溯、版本切换、多人协作、远程备份

本地仓库:开发人员自己电脑上的 Git 仓库

远程仓库:远程服务器上的 Git 仓库

 commit:提交,将本地文件和版本信息保存到本地仓库

push:推送,将本地仓库文件和版本信息上传到远程仓库

pull:拉取,将远程仓库文件和版本信息下载到本地仓库

2、下载安装

下载地址: Git - Downloads

 

 出现上图即为安装成功

Git GUI Here:打开Git 图形界面

Git Bash Here:打开Git 命令行

二、git代码托管服务

1、常用的 Git 代码托管服务

Git中存在两种类型的仓库,即本地仓库远程仓库。那么我们如何搭建Git远程仓库呢?

我们可以借助互联网上提供的一些代码托管服务来实现,其中比较常用的有GitHub、码云、GitLab等。

        gitHub( 地址:https://github.com/ ),是一个面向开源及私有软件项目的托管平台,因为只支持Git 作为唯一的版本库格式进行托管,故名gitHub

        码云(地址: https://gitee.com/ ),是国内的一个代码托管平台,由于服务器在国内,所以相比于 GitHub ,码云速度会更快
         GitLab (地址: https://about.gitlab.com/ ),是一个用于仓库管理系统的开源项目,使用 Git 作为代码管理工具,并在此基础上搭建起来的 web 服务
        BitBucket(地址:https://bitbucket.org/) 是一家源代码托管网站,采用Mercurial和Git作为分布式版本控制系统,同时提供商业计划和免费账户

2、使用码云代码托管服务 

使用码云的操作流程如下:

1、注册码云账号

注册网址: https://gitee.com/signup

2、登录码云

注册完成后可以使用刚刚注册的邮箱进行登录(地址: https://gitee.com/login

3、创建远程仓库

4、邀请其他用户成为仓库成员

 目前仓库成员只有自己一个人(身份为管理员)。在企业实际开发中,一个项目往往是由多个人共同开发完成的,为了使多个参与者都有权限操作远程仓库,就需要邀请其他项目参与者成为当前仓库的成员。

三、git常用命令

1、git全局设置

当安装Git后首先要做的事情是设置用户名称和email地址。这是非常重要的,因为每次Git提交都会使用该用户信息。

Git 命令行中执行下面命令:

u 设置用户信息

   git config --global user.name “youzai

   git config --global user.email “hello@youzai .cn”

 查看配置信息

   git config --list

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

2、获取git仓库

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

(1) 在本地初始化一个 Git 仓库(不常用)

        执行步骤如下:

        1. 在任意目录下创建一个空目录(例如repo1)作为我们的本地Git仓库

        2. 进入这个目录中,点击右键打开Git bash窗口

        3. 执行命令git init

        如果在当前目录中看到.git文件夹(此文件夹为隐藏文件夹)则说明Git仓库创建成功

(2)从远程仓库克隆(常用)

可以通过Git提供的命令从远程仓库进行克隆,将远程仓库克隆到本地

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

3、工作、暂存区、版本库 概念

版本库:前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等

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

暂存区.git文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方

 4、Git工作区中文件的状态

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

untracked 未跟踪(未被纳入版本控制)
tracked 已跟踪(被纳入版本控制)

 1Unmodified 未修改状态

 2Modified 已修改状态

 3Staged 已暂存状态

5、本地仓库操作 

本地仓库常用命令如下:

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

6、远程仓库操作

(1)git remote   查看远程仓库

(2)git remote add  添加远程仓库
        添加远程仓库,运行 git remote add < shortname > < url > 添加一个新的远程 Git 仓库,同时指定一个可以引用的简写。
(3)git clone  从远程仓库克隆

        如果你想获得一份已经存在了的 Git 远程仓库的拷贝,这时就要用到 git clone 命令。 Git 克隆的是该 Git 仓库服务器上的几乎所有数据(包括日志信息、历史记录等),而不仅仅是复制工作所需要的文件。

        克隆仓库的命令格式是: git clone [url]

(3)git pull  从远程仓库拉取

        git pull 命令的作用是从远程仓库获取最新版本并合并到本地仓库,命令格式:git pull [short-name] [branch-name]

        注意:如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错(fatal: refusing to merge unrelated histories

        解决此问题可以在git pull命令后加入参数--allow-unrelated-histories

(4)git push  推送到远程仓库
将本地仓库内容推送到远程仓库,可以使用命令: git push [remote-name] [branch-name]

7、分支操作

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

同一个仓库可以有多个分支,各个分支相互独立,互不干扰。

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

(1)git branch  查看分支

git branch  列出所有本地分支

git branch -r  列出所有远程分支

git branch -a  列出所有本地分支和远程分支

(2)git branch [name]  创建分支

创建分支命令格式: git branch [name]
(3) git checkout [name]  切换分支

切换分支命令格式:git checkout [name]

(4) git push [ shortName ] [name]  推送至远程仓库分支
推送至远程仓库分支命令格式: git push [ shortName ] [name]
(5) git merge [name]  合并分支
合并分支命令格式: git merge [name]

8、标签操作

git tag  列出已有的标签
 列出已有的标签可以使用命令: git tag
git tag [name]  创建标签
创建标签可以使用命令: git tag [name]
git push [ shortName ] [name]  将标签推送至远程仓库
将标签推送至远程仓库的命令格式: git push [ shortName ] [name]
git checkout -b [branch] [name]  检出标签
检出标签时需要新建一个分支来指向某个标签,检出标签的命令格式: git checkout -b [branch] [name]

三、在 IDEA 中使用 Git

1、在 IDEA 中配置 Git

2、获取Git仓库

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

本地初始化仓库

从远程仓库克隆

3、本地仓库操作

将文件加入暂存区
将暂存区的文件提交到版本库
查看日志

 

4、远程仓库操作

查看远程仓库
添加远程仓库
推送至远程仓库
从远程仓库拉取

5、远程仓库操作 

查看分支

创建分支

切换分支

将分支推送到远程仓库

合并分支

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python简单实现人脸检测/跟随

import cv2# 加载人脸识别器的模型 face_cascade cv2.CascadeClassifier(cv2.data.haarcascades haarcascade_frontalface_default.xml)# 打开摄像头 cap cv2.VideoCapture(0)# 初始化人脸框位置 prev_faces []# 定义绘制带圆角矩形边框的函数 def draw_rounded_rectangle(…

pip安装opencv-python不成功

一个比较笨但还算有效的方法&#xff1a;如果你的python版本较低&#xff0c;如现在2023-07-04使用python3.6环境&#xff0c;使用pip默认安装会是最新的4.8.0.7版本&#xff0c;但事实上这个版本不支持py3.6环境&#xff0c;所以你需要去这里查支持py3.6的最近的一个版本是什么…

从 AI 增强到大模型,企业使用数据的方式又将如何变化?

AI&#xff08;Artificial Intelligence&#xff0c;人工智能&#xff09;的发展不过百年&#xff0c;却已经深刻影响着人们的思维和见解&#xff0c;并逐渐关联到每个人生活和工作的方方面面。从最初的规则引擎和引入统计学方法&#xff0c;到基于知识表示和推理机制的专家系统…

VScode中的插件

开启VScode中最简单的内部浏览器 - 可以访问外网 - Browser Preview 插件安装&#xff1a; 插件使用&#xff1a;由下角 - 状态栏 - VS Browser按钮 live sass compiler-vscode插件将scss编译为css live sass compiler是VSCode扩展&#xff0c;可以实时地将SASS / SCSS文件…

POSTGRESQL SQL 执行用 IN 还是 EXISTS 还是 ANY

开头还是介绍一下群&#xff0c;如果感兴趣polardb ,mongodb ,mysql ,postgresql ,redis 等有问题&#xff0c;有需求都可以加群群内有各大数据库行业大咖&#xff0c;CTO&#xff0c;可以解决你的问题。加群请联系 liuaustin3 &#xff0c;在新加的朋友会分到3群&#xff08;共…

【youcans动手学模型】MobileNet 模型-CIFAR10图像分类

欢迎关注『youcans动手学模型』系列 本专栏内容和资源同步到 GitHub/youcans 【youcans动手学模型】MobileNet 模型-CIFAR10图像分类 1. MobileNet 卷积神经网络模型1.1 模型简介1.2 论文介绍 2. 在 PyTorch 中定义 MobileNet V1 模型类2.1 深度可分离卷积&#xff08;DSC&…

转换流~~

乱码如何解决&#xff1a; 使用字符输入转换流可以提取文件&#xff08;GBK&#xff09;的原始字节流&#xff0c;原始字节不会存在问题然后把字节流以指定编码转换成字符输入流&#xff0c;这样字符输入流中的字符就不乱码了 1&#xff1a;字符输入转换流 字符转换输入流&a…

uni-App踩坑记录

​ 1、uni自己封装的axios在真机中失效&#xff0c;发不出请求 uniapp中使用axios 需要配置适配器 (添加适配器有点费劲&#xff0c;直接封装uni自带请求也可以) axios-adapter-uniapp传送门 axios.defaults.adapter function(config) { //自己定义个适配器&#xff0c;用来…

2023年生猪行业研究报告

第一章 行业概况 生猪是指猪类动物中未经加工的、原始的、活体的猪&#xff0c;通常是指用于肉类生产的猪。生猪在全球范围内都是主要的肉类来源之一。它们的肉质丰富&#xff0c;营养价值高&#xff0c;同时还能用来制作各种加工肉类产品&#xff0c;如火腿、香肠等。 生猪养…

AR试穿试戴相关SDK或平台

1.火山引擎 链接 咨询过平台收费比较高几十万一年而且还是起步价 2.Geenee 链接 geenee在衣服、裤子、头饰以及鞋子方面可以实现试穿。 3.Wanna 链接 Wanna 试衣、试包、试鞋及手表都可以&#xff0c;我试过鞋子的试穿效果还不错 4.DeepAR …

nginx进行反向代理

Nginx是一个开源的高性能Web服务器和反向代理服务器。它最初是由Igor Sysoev在2004年开发的&#xff0c;现在由一个全球性的社区维护和支持。 Nginx的主要特点包括&#xff1a; 高性能&#xff1a;Nginx使用事件驱动模型&#xff0c;可以处理高并发请求&#xff0c;具有出色的…

信息服务上线渗透检测网络安全检查报告和解决方案4(网站风险等级评定标准、漏洞危害分级标准、漏洞安全建议)

系列文章目录 信息服务上线渗透检测网络安全检查报告和解决方案3(系统漏洞扫描、相对路径覆盖RPO漏洞、nginx漏洞修复)信息服务上线渗透检测网络安全检查报告和解决方案2(安装文件信息泄漏、管理路径泄漏、XSS漏洞、弱口令、逻辑漏洞、终极上传漏洞升级)信息服务上线渗透检测网…

常微分方程(ODE)求解方法总结(续)

常微分方程&#xff08;ODE&#xff09;求解方法总结&#xff08;续&#xff09; 1 隐式方法2 多步法2.1 二阶方法2.1.1 非自启动修恩方法2.2 开型和闭型积分公式2.3 高阶多步法 1 隐式方法 常微分方程&#xff08;ODE&#xff09;求解方法总结 里面介绍了我称为“正常思路”的…

C/C++的发展历程和未来趋势

文章目录 C/C的起源C/C的应用C/C开发的工具C/C未来趋势 C/C的起源 C语言 C语言是一种通用的高级编程语言&#xff0c;由美国计算机科学家Dennis Ritchie在20世纪70年代初期开发出来。起初&#xff0c;C语言是作为操作系统UNIX的开发语言而创建的。C语言的设计目标是提供一种功…

Transformer时间序列:PatchTST引领时间序列预测进

Transformer时间序列&#xff1a;PatchTST引领时间序列预测进 引言为什么transformer框架可以应用到时间序列呢统计学模型深度学习模型 PatchTSTPatchTST模型架构原理。通道独立性Patchingpatching的优点Transformer编码器 利用表示学习改进PatchTST使用PatchTST模型进行预测初…

【RabbitMQ】

一、概念 MQ&#xff08;消息队列&#xff09;&#xff1a;是指在消息传送过程中保存消息的容器&#xff0c;用于分布式系统之间的通信 生产者&#xff1a;是发送消息的用户应用程序。 队列&#xff1a;是存储消息的缓冲区。 消费者&#xff1a;是接收消息的用户应用程序。 1…

(嵌入式)STM32G061C8T6、STM32G061C6T6、STM32G061C8U6 64MHz 64KB/32KB 闪存(MCU)

STM32G0 32位微控制器 (MCU) 适合用于消费、工业和家电领域的应用&#xff0c;并可随时用于物联网 (IoT) 解决方案。这些微控制器具有很高的集成度&#xff0c;基于高性能ARM Cortex-M0 32位RISC内核&#xff0c;工作频率高达64MHz。该器件包含内存保护单元 (MPU)、高速嵌入式内…

mysql 视图

视图&#xff0c;是虚拟存在的表&#xff0c;视图中的数据在数据库中实际不存在&#xff0c;视图只保存查询SQL的逻辑&#xff0c;不保存查询结果 建表sql DROP TABLE IF EXISTS w_dict; CREATE TABLE w_dict (id int(0) NOT NULL AUTO_INCREMENT,label varchar(255) CHARACT…

go开源项目slgserver源码分析

个人博客地址: https://cxx001.gitee.io 前言 项目开源地址&#xff1a;https://github.com/llr104/slgserver 比较适合作为go语言入门学习项目或轻量级游戏项目&#xff0c;整体的项目结构和编码质量还是可以的。不过距离商业项目还是差点意思&#xff0c;如服务负载、容灾这…

弗迪科技携手纷享销客共建CRM系统,数智化升级加速“灯塔工厂”征程

当前&#xff0c;全球新一轮科技革命正和产业升级融合发展&#xff0c;数字化技术成为各行各业升级发展的重要推动力。 自2018年起&#xff0c;世界经济论坛与麦肯锡咨询公司发起“灯塔工厂”项目&#xff0c;全球严选制造业数字化转型典范作为“数字化制造”和“全球化4.0”的…