Git入门学习笔记

        Git 是一个非常强大的分布式版本控制工具

        在下载好Git之后,鼠标右击就可以显示 Git Bash 和 Git GUI,Git Bash 就像是在电脑上安装了一个小型的 Linux 系统!

1. 打开 Git Bash

2. 设置用户信息(这是非常重要的

        git config --global user.name "输入要设置的名字"

        git config --global user.email "输入要设置的邮箱"

查看配置信息

        git config --global user.name 

        git config --global user.email

3. 为常用的指令配置别名

        有些常用的指令参数非常多,每次都要输入好多参数,我们可以使用别名。

        1. 打开用户目录,创建 .bashrc 文件(注意,部分windows系统不允许我们创建以点开头的文件,可以使用命令行工具)

        打开 Git Bash ,执行 touch ~/.bashrc ,touch 类似于linux系统下的创建文件,~ 波浪号代表当前的根目录

获取本地仓库

        要使用 Git 对我们的代码进行版本控制,首先要先创建本地仓库

        1. 在电脑任意的位置创建一个空目录(例如 Test)作为我们的本地 Git 仓库。(可以使用命令行 touch ~/.Test,也可以直接在windows系统下右击创建文件)

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

        3.  执行命令 git init

        4. 如果创建成功后可在文件下看到隐藏的 .git 目录

基本操作指令

        Git 工作目录下(这里简单说一下什么叫做工作目录,在之前创建的本地仓库中,除了 .git 文件之外的其他所有创建的文件都叫做工作目录)对于文件的修改(增加、删除、更新)会存在几个状态,这些修改的状态会随着我们执行 Git 的命令而发生变化。

        使用如下命令来控制状态之间的切换:

        1. git add        (工作区  -->  暂存区)

        1. git commit        (暂存区  -->  本地仓库)

查看修改的状态(status)

        作用:查看修改的状态:暂存区,工作区

        命令形式:git status

添加工作区到暂存区

        git add

提交暂存区到本地仓库

        git commit -m "注释内容"

查看提交日志(简单来说就是查看一个文件的修改历史)

        git log [option]

        option

                --all 显示所有分支

                --pretty=oneline 将提交信息显示为一行

                --abbrev-commit 使得输出的commitld更简短

                --graph 以图的形式显示

版本回退

        命令形式:git reset --hard commitID

                commitID 可以使用 git -log 或 git log 查看 (这里说一下如何在 命令行中进行复制粘贴,在没有进行特殊设置之前,选中即意味着复制,按下鼠标的滚轮,意味着进行粘贴,绝不会 ctrl + cv)

        如何查看已经删除的记录?

                git reflog

                这个指令可以看到已经删除的提交记录

分支

        几乎所有的版本控制系统都以某种形式支持分支。使用分支意味着你可以把你的工作从开发主线上分离开来进行重大的 Bug 修改、开发新的功能,以免影响开发主线。

        git branch 命令用来查看有哪些分支

        git branch + 分支名  即可用来创建另一个分支

        git checkout  切换分支

        git checkout -b 分支名  创建并切换到新的分支上

        git merge 分支名称(通常都是合并到master分支上)

        git branch -d b1 删除分支时,需要做各种检查

        git branch -D b1 不做任何检查,强制删除

解决冲突

        当不同分支同时修改同一行代码或者数据的时候,就会产生冲突,在合并分支的时候,Git 并不知道到底应该去执行哪个分支,此时,Git 就会将这个问题留给开发者。

        此时开发者就需要手动去解决冲突:

                1. 手动去处理文件冲突的地方

                2. 将解决完冲突的文件加入暂存区(add)

                3. 提交到仓库(commit)

开发中分支的使用原则与流程

        几乎所有的版本控制系统都以某种形式支持分支。使用分支意味着你可以把你的工作从开发主线上分离开来进行重大的 Bug 修改,开发新的功能,以免影响开发主线。

        master 分支:线上主分支

        develop 分支:开发的主要分支,最终合并到 master 分支上进行项目程序的上线(合并完之后一般不进行删除)

        feature 分支:分支的研发任务,完成后合并到 develop 分支(合并完成后一般删除掉)

 Git 远程仓库

        常用的托管服务(远程仓库)

        通过之前的学习,我们已经知道了 Git 存在两种类型的仓库,即本地仓库和远程仓库。那么如何去搭建 Git 远程仓库呢?我们可以借助互联网上提供的一些代码管理服务来实现,其中比较常用的有 GitHub,码云,GitLab等

        gitHub(https://github.com)

        码云(https://gitee.com)

        GitLab(https://about.gitlab.com)

首先自己创建远程仓库:

        git remote add origin git@gitee.com:cabk_xiao/git_test.git(这一命令行的意思就是说:remote add 远程添加到仓库 git@gitee.com:cabk_xiao/git_test.git ,并且设置名字为 origin)

        git remote 命令用于查看已经连接的远程仓库

        git push origin master 用于将本地仓库推送到远程仓库(这样一来本地仓库的代码就会被推送到远程仓库中)

在推送到远端的同时和远端分支建立了关联关系:

        --set--upstream 推送到远端的同时并且建立起和远端分支的关联关系

        git push --set-upstream origin master

        此命令表示当前分支已经和远端分支建立了关联,此后使用的时候可以省略分支名和远端名。

本地分支和远程分支的关联关系

        查看关联关系的时候我们可以使用:git branch -vv 命令

从远程仓库克隆(这个命令是我们平时使用最方便的)

        所谓克隆就是:当其他程序员将代码公开到 GitHub ,码云 ,GitLab 下时,我们可以直接去使用,通过克隆命令直接克隆远程仓库到本地

        git clone 远程仓库路径 本地目录

        ag. git clone https://gitee.com/czbk_zhang/git_test.git git-test(通过这样一个路径,就可以实现将远程仓库他人的代码克隆到本地进行使用)

 从远端仓库中拉取和抓取

        抓取命令:git fetch [remote name] [branch name]

                抓取指令就是将仓库里的更新都抓取到本地,不会进行合并

        拉取命令:git pull [remote name] [branch name]

                拉取指令就是将远端仓库的修改拉到本地并自动进行合并,等同于 fetch + merge

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

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

相关文章

使用GRU进行天气变化的时间序列预测

本文基于最适合入门的100个深度学习项目的学习记录,同时在Google clolab上面是实现,文末有资源连接 天气变化的时间序列的难点 天气变化的时间序列预测涉及到了一系列复杂的挑战,主要是因为天气系统的高度动态性和非线性特征。以下是几个主…

(十五)【Jmeter】取样器(Sampler)之HTTP请求

简述 操作路径如下: HTTP请求 (HTTP Sampler): 作用:模拟发送HTTP请求并获取响应。配置:设置URL、请求方法、请求参数等参数。使用场景:测试Web应用程序的HTTP接口性能。优点:支持多种HTTP方法和请求参数,适用于大多数Web应用程序测试。缺点:功能较为基础,对于复杂…

突发,Anthropic推出突破性Claude 3系列模型,性能超越GPT-4

🦉 AI新闻 🚀 突发,Anthropic推出突破性Claude 3系列模型 摘要:人工智能创业公司Anthropic宣布推出其Claude 3系列大型语言模型,该系列包括Claude 3 Haiku、Claude 3 Sonnet和Claude 3 Opus三个子模型,旨…

第18章 Java I/O系统

第18章 Java I/O系统 18.1 File类 File类不仅仅指文件,还能代表一个目录下的一组文件。 18.1.1 目录列表器 public class Test {public static void main(String[] args) {File file new File("E:\\test");String[] strings file.list(new DirFilte…

安装Proxmox VE虚拟机平台

PVE是专业的虚拟机平台,可以利用它安装操作系统,如:Win、Linux、Mac、群晖等。 1. 下载镜像 访问PVE官网,下载最新的PVE镜像。 https://www.proxmox.com/en/downloads 2. 下载balenaEtcher balenaEtcher用于将镜像文件&#…

「滚雪球学Java」:多线程(章节汇总)

咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java SE相关知识点了,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好…

数据可视化原理-腾讯-3D网格热力图

在做数据分析类的产品功能设计时,经常用到可视化方式,挖掘数据价值,表达数据的内在规律与特征展示给客户。 可是作为一个产品经理,(1)如果不能够掌握各类可视化图形的含义,就不知道哪类数据该用…

带你全方位体验 Amazon Connect

1.前言 授权说明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在亚马逊云科技开发者社区、 知乎、自媒体平台、第三方开发者媒体等亚马逊云科技官方渠道。 近日亚马逊云科技在拉斯维加斯拉开了年度客户大会-亚马逊云科技 re:Invent 的序…

python网络爬虫教程笔记(1)

系列文章目录 文章目录 系列文章目录前言一、爬虫入门1.爬虫是什么?2.爬虫工作原理3.爬虫基本原理4.工作流程5.HTTP请求6.HTTP响应7.HTTP原理:证书传递、验证和数据加密、解密过程解析8.Urllib.request库的使用9.TCP3次握手,4次挥手过程 总结…

PHP+MySQL实现后台管理系统增删改查之够用就好

说明 最近要给博客弄个后台,不想搞得很复杂,有基本的增删改查就够了,到网上找了一圈发现这个不错,很实用,希望可以帮到大家,需要的朋友评论区留下邮箱,我安排发送。 演示效果 项目介绍 本项目…

【RISC-V 指令集】RISC-V 向量V扩展指令集介绍(一)-向量扩展编程模型

1. 引言 以下是《riscv-v-spec-1.0.pdf》文档的关键内容: 这是一份关于向量扩展的详细技术文档,内容覆盖了向量指令集的多个关键方面,如向量寄存器状态映射、向量指令格式、向量加载和存储操作、向量内存对齐约束、向量内存一致性模型、向量…

【2024.03.05】定时执行专家 V7.1 发布 - TimingExecutor V7.1 Release

目录 ▉ 软件介绍 ▉ 新版本 V7.1 下载地址 ▉ V7.1 新功能 ▼2024-03-03 V7.1 - 更新日志 ▉ V7.0 新UI设计 ▉ 软件介绍 《定时执行专家》是一款制作精良、功能强大、毫秒精度、专业级的定时任务执行软件。软件具有 25 种【任务类型】、12 种【触发器】触发方式&#x…

C++ 根据公式计算椭圆任意点到中心的距离

#include <iostream> using namespace std;double fact(int x) //定义阶乘函数。注意是double类型 {double y x; //注意是double类型for (int i x-1; i > 0; i--)y * i;return y; };double My_sin(int x) //定义sin函数。注意是double类型 {double y 0; //注意是do…

Linux性能即时评估60秒秘籍

下面这个清单适用于任何性能问题的分析工作&#xff0c;也反映了笔者在实际工作中&#xff0c;当登录到一台表现不佳的 Linux 系统中后&#xff0c;在最初60秒内通常会进行的操作。 uptime dmesg | tail && cat /var/log/messages vmstat 1 mpstat -P ALL 1 pidsta…

使用 gulp-cleanwxss 清除小程序无用样式代码

小程序在迭代中&#xff0c;因没有及时清理无用样式&#xff0c;造成包体积越来越大。而通过人工判断清除工作量大&#xff0c;因而使用 gulp-cleanwxss 实现脚本清除。 一、Demo 演示 二、实现步骤 1、全局安装 gulp 命令行工具 yarn global add gulp-cli2、局部安装依赖 gu…

一条SQL引起的系统不可用

一.前言 最近在运维系统&#xff0c;系统对客端突然报了403错误&#xff0c;从后台看发现了大量的慢SQL&#xff0c;导致查询超时&#xff0c;仔细分析我从来没见过那么厚颜无耻的SQL&#xff0c;一条SQL语句关联了一个大表&#xff08;6000数据&#xff09;查询了10次。我也很…

Android 14后台服务永久保活的技术方法

Android 14后台服务永久保活的技术方法 在本篇博客中&#xff0c;我们将探讨如何创建一个在Android系统中不会被杀死的后台服务。 第一步&#xff1a;创建一个后台服务。 在这一步中&#xff0c;我们需要创建一个后台服务的代码。 第二步&#xff1a;在AndroidManifest.xml中…

StarRocks实战——vivo基于 StarRocks 构建实时大数据平台

目录 前言 一、数据挑战 1.1 时效性挑战&#xff0c;业务分析决策需加速 1.2 访问量挑战&#xff0c;性能与稳定性亟待提高&#xff0c;支撑业务稳定运行 1.3 计算场景挑战&#xff0c;难以满足业务复杂查询需求 1.4. 运维挑战&#xff0c;用户查询体验需优化 二、OLA…

docker的网络配置

文章目录 1、网络模式1.1、bridge模式(默认模式)1.2、host模式 2、bridge模式3、自定义网络 1、网络模式 Docker在创建容器时有四种网络模式&#xff1a;bridge/host/container/none&#xff0c;bridge为默认不需要用–net去指定&#xff0c;其他三种模式需要在创建容器时使用…

Spring(22) Spring中的9种设计模式

目录 一、简单工厂模式&#xff08;Simple Factory&#xff09;二、工厂方法模式&#xff08;Factory Method&#xff09;三、单例模式&#xff08;Singleton&#xff09;四、适配器模式&#xff08;Adapter&#xff09;五、代理模式&#xff08;Proxy&#xff09;七、观察者模…