Git 使用教程

  • 一、Git的认识

  • 1.1版本控制

什么是“版本控制”?我为什么要关心它呢?

版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。

a) 还原:如果你是程序开发者,在新写一个促销活动的java文件,两天后,项目经理说由于疫情原因促销活动取消了,让你还原到两天前的代码,如果没有版本控制.....,凉凉........。

如果有版本控制,可以轻松恢复到原先的样子, 额外增加的工作量也微乎其微。

b) 协作:支持多个开发并行开发,同时leader有利于review每个人每次提交历史与代码质量。

1.2常用的版本控制软件

SVN :

Subversion(SVN) 是一个开源的版本控制系統,  Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库(repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。

Git :

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

区别:

1.3Git 安装

ubuntu : apt install git

centos:yum install git

官网:https://git-scm.com/book/zh/v2/

Git - Downloads

1.4课堂问答

  1. Git的作用
  2. Git 与 SVN 区别点

二、创建本地版本库

1.git  --help  查看常用命令

开始一个工作区

   clone      克隆仓库到一个新目录

   init        创建一个新的 Git 仓库

在当前变更上工作

   add        添加文件内容至索引

   mv         移动或重命名一个文件、目录或符号链接

   reset       重置当前 HEAD 到指定状态

   rm         从工作区和索引中删除文件

检查历史和状态

   bisect     通过二分查找定位引入 bug 的提交

   grep       输出和模式匹配的行

   log        显示提交日志

   show      显示各种类型的对象

   status     显示工作区状态

扩展、标记和调校您的历史记录

   branch     列出、创建或删除分支

   checkout   切换分支或恢复工作区文件

   commit     记录变更到仓库

   diff         显示提交之间、提交和工作区之间等的差异

   merge      合并两个或更多开发历史

   rebase      在另一个分支上重新应用提交

   tag          创建、列出、删除或校验一个 GPG 签名的标签对象

协同

   fetch      从另外一个仓库下载对象和引用

   pull       获取并整合另外的仓库或一个本地分支

   push       更新远程引用和相关的对象

2.git init

创建一个新的Git仓库

3.git add <fileName>

   添加文件内容至索引库

4.git status

   查看仓库状态

5.git commit -m "解释说明"

     提交⽂件到仓库

6.git log

  查看提交日志

7.git branch

   查看本地分支

8.git branch V2

   创建名称为"V2" 的分支。

9.git branch -d V2

   删除名称为"V2"的分支

10. git checkout V2

切换到V2分支

11. git merge V2

合并分支V2 到当前分支

12. git checkout -- fileName

丢弃⼯作区的修改, git checkout -- 4.txt

13. git reset HEAD 4.txt

删除已经提交到缓存区的修改,之后返回到⼯作区

14.git rm 1.txt

删除指定文件

15 打tag

参看标签:git tag

新增 tag:git tag -a 20220427 -m "促销1.0"

删除标签:git tag -d 20220427

查看具体信息: git show 20220427

16 通过tag 创建分支

git branch <分支名称>  <tag名>

git branch 20220427-fix1 20220427

三、关联远程Git仓库

1. 生成ssh公钥

https://git-scm.com/book/zh/v2/

2.git remote add origin <仓库地址>

git remote add origin https://gitee.com/beiyou123/project01.git

关联远程仓库

3. git push -u origin master:master

将本地分支master推送到远程master分支

4.git pull origin master

   拉取远程分支master到本地

5.git branch -r/a

    查看远程分支/所有分支

6. git clone git@github.com:pkgcenter/java02.git

    克隆远程项目

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

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

相关文章

Elasticsearch:创建自定义 ES Rally tracks 的分步指南

作者&#xff1a;Alejandro Snchez 按照这个综合教程学习如何制作个性化的 Rally tracks ES Rally 是什么&#xff1f;它的用途是什么&#xff1f; ES Rally 是一个用于在 Elasticsearch 上测试性能的工具&#xff0c;允许你运行和记录比较测试。 做出决策可能很困难&#x…

电脑开机启动项在哪里设置?优化系统速度不是梦!

电脑的开机启动项设置直接影响着系统启动的速度和性能&#xff0c;合理配置启动项可以提高系统的启动速度&#xff0c;同时确保开机时运行的程序符合个人需求。那么&#xff0c;电脑开机启动项在哪里设置呢&#xff1f;本文将详细介绍电脑开机启动项设置的三种方法&#xff0c;…

helm部署gitlab-runner问题解决

关于.gitlab-ci.yml中build镜像时&#xff0c;docker守护进程未启动错误 参考&#xff1a;https://docs.gitlab.com/runner/install/kubernetes.html 问题截图 解决方法 values.yaml中关于conf.toml添加 注意&#xff1a;确保每个节点的docker正常运行 [[runners.kubernetes…

week04day01(爬虫)

一. 爬虫 只爬取公开的信息&#xff0c;不能爬取未公开的后台数据 1.爬虫的合法性 法无禁止皆可为 -- 属于法律的灰色地带https://www.tencent.com/robots.txt -- 网站/robots.txt 可以查看禁止爬取的内容 2. URL Uniform Resource Locator 统一资源定位符https://www.…

2024年黑龙江省考公告出来了,招7768人,速速查收报名流程!

✔️报名时间&#xff1a;2024年2月19日9:00至2月23日17:00 ✔️资格审查时间&#xff1a;至2024年2月23日17:00 ✔️缴费时间&#xff1a;至2024年2月25日09&#xff1a;00 ✔️打印准考证时间&#xff1a;2024年3月12日9&#xff1a;00至3月17日9&#xff1a;00 ✔️公共科目…

多线程相关(1)

线程调度 线程状态&#xff1a;状态切换阻塞与唤醒阻塞唤醒 wait 与 sleep创建线程方式 线程是cpu任务调度的最小执行单位&#xff0c;每个线程拥有自己独立的程序计数器、虚拟机栈、本地方法栈。 线程状态&#xff1a; 线程状态包括&#xff1a;创建、就绪、运行、阻塞、死亡…

Leetcode刷题笔记题解(C++):203. 移除链表元素

思路&#xff1a;不同的情况出现了&#xff0c;就是第一个节点要是为等于val的节点&#xff0c;可以新建一个节点&#xff0c;并next指向head&#xff0c;这样就可以遍历新的链表来删除节点 /*** Definition for singly-linked list.* struct ListNode {* int val;* L…

揭秘阿里巴巴商品详情API:电商数据获取新篇章,业务效率飞跃提升

阿里巴巴平台商品详情API接口技术深度解析 一、概览 在阿里巴巴这个庞大的电商生态中&#xff0c;商品详情API接口&#xff08;item_get&#xff09;扮演着至关重要的角色。通过这一接口&#xff0c;开发者可以轻松地获取商品的详细信息&#xff0c;为选品、数据分析、价格监…

我是怎么用静态IP代理为Google账号保驾护航的

我为何要使用到静态IP代理服务 我是一名IT从业者&#xff0c;在很多年前就加入了一家跨国软件公司&#xff0c;日常需要在全世界各地跟甲方沟通&#xff0c;负责的工作中重要的一块就是Google广告&#xff0c;为此公司还特意给配置了一台笔记本电脑。 目录 我为何要使用到静态…

计算机视觉基础:【矩阵】矩阵选取子集

OpenCV的基础是处理图像&#xff0c;而图像的基础是矩阵。 因此&#xff0c;如何使用好矩阵是非常关键的。 下面我们通过一个具体的实例来展示如何通过Python和OpenCV对矩阵进行操作&#xff0c;从而更好地实现对图像的处理。 示例 示例&#xff1a;选取矩阵中指定的行和列的…

使用IntelliJ IDEA查看接口的全部实现方法

在大型Java项目中&#xff0c;经常会使用接口和抽象类进行代码设计。为了更好地了解代码结构和功能&#xff0c;我们需要快速查看一个接口的所有实现类。IntelliJ IDEA提供了一些方便的方法来实现这一目标。 1. 点击查看接口的实现子类 在IDEA中&#xff0c;你可以轻松地查看…

Ansys Zemax | 使用点扩散函数的衍射极限成像系统的分辨率

附件下载 联系工作人员获取附件 成像系统&#xff08;例如显微镜&#xff09;的衍射极限分辨率可以通过不同方式表征。在本文中&#xff0c;我建议使用在 OpticStudio 中计算的点扩散函数 (PSF) 来客观衡量这些成像系统的分辨率。文中介绍了重叠图像&#xff08;探测器&#x…

SpringBoot项目如何打包成docker镜像?

将Spring Boot项目打包成Docker镜像的过程可以分为以下几个步骤&#xff1a; 1. 创建Dockerfile 首先&#xff0c;你需要在Spring Boot项目的根目录下创建一个Dockerfile。这个文件包含了Docker镜像构建的所有指令。一个基本的Dockerfile可能看起来像这样&#xff1a; # 使用…

软件测试面试常见问题【含答案】

一、面试技巧题(主观题) 序号面试题1怎么能在技术没有那么合格的前提下给面试官留个好印象&#xff1f;2面试时&#xff0c;如何巧妙地避开不会的问题&#xff1f;面试遇到自己不会的问题如何机智的接话&#xff0c;化被动为主动&#xff1f;3对于了解程度的技能&#xff0c;被…

【自然语言处理】:实验4答案,预训练语言模型实现与应用

代码和报告均为本人自己实现&#xff08;实验满分&#xff09;&#xff0c;只展示主要任务实验结果&#xff0c;如果需要详细的实验报告或者代码可以私聊博主&#xff0c;接实验技术指导1对1 实验要求布置请看http://t.csdnimg.cn/1sh7s 运行模型&#xff0c;测试模型在有 100%…

Python实现KNN算法

# -*- coding: utf-8 -*- """ Created on 2024.2.21author: 2024.2.21 """# 导入算法包以及数据集 import numpy as np from sklearn import datasets from sklearn.model_selection import train_test_split from sklearn.metrics import class…

【centos】【vsftpd】本地用户登录配置

目录 安装vsftpd和ftp本地用户登录-不限制访问目录本地用户登录-限制访问目录有可能影响连接的问题pam认证selinux策略被动模式防火墙ipv4和ipv6 报错1、 530 Login incorrect2、500 OOPS: vsftpd: refusing to run with writable root inside chroot()3、227 Entering Passive…

leetcode:93.复原IP地址

解题思路:回溯算法 树形结构 代码实现&#xff1a; 参数s,startIndex,pointSum 终止条件&#xff1a;pointSum 3 判断字符串的startIndex到s.size()-1区间&#xff08;左闭右闭&#xff09;是否合法&#xff0c;如果合法&#xff0c;加入结果集并返回。 单层递归的逻辑&…

【初始RabbitMQ】死信队列的实现

死信的概念 死信&#xff0c;顾名思义就是无法被消费的消息&#xff0c;字面意思可以这样理解&#xff0c;一般来说&#xff0c;producer 将消息投递到 broker 或者直接到 queue 里了&#xff0c;consumer 从 queue 取出消息 进行消费&#xff0c;但某些时候由于特定的原因导致…

【机器学习】数据清洗之处理重复点

&#x1f388;个人主页&#xff1a;豌豆射手^ &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f917;收录专栏&#xff1a;机器学习 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共同学习、交流进…