精通Git(第2版)读书笔记

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 第 1章 入门 1
    • 1.1 关于版本控制 1
      • 1.1.1 本地版本控制系统 1
  • 第 2章 Git基础 13
    • 2.1 获取Git仓库 13
      • 2.1.1 在现有中初始化Git仓库 13
      • 2.1.2 克隆现有仓库 14
    • 2.2 在Git仓库中记录变更 14
      • 2.2.1 查看当前文件状态 15
      • 2.2.2 跟踪新文件 16
      • 2.2.3 暂存已修改的文件 16
      • 2.2.4 显示更简洁的状态信息 18
      • 2.2.5 忽略文件 18
      • 2.2.6 查看已暂存和未暂存的变更 19
      • 2.2.7 提交变更 21
      • 2.2.8 跳过暂存区 22
      • 2.2.9 移除文件 23
      • 2.2.10 移动文件 24
    • 2.3 查看提交历史 25
    • 2.4 撤销操作 30
      • 2.4.1 撤销已暂存的文件 30
      • 2.4.2 撤销对文件的修改 31
    • 2.5 远程仓库的使用 32
      • 2.5.1 显示远程仓库 32
      • 2.5.2 添加远程仓库 33
      • 2.5.3 从远程仓库获取和拉取数据 34
      • 2.5.4 将数据推送到远程仓库 34
      • 2.5.5 检查远程仓库 35
      • 2.5.6 删除和重命名远程仓库 36
    • 2.6 标记 36
      • 2.6.1 列举标签 36
      • 2.6.2 创建标签 37
      • 2.6.3 注释标签 37
      • 2.6.4 轻量标签 38
      • 2.6.5 补加标签 38
      • 2.6.6 共享标签 39
      • 2.6.7 检出标签 39
    • 2.7 Git别名 40
    • 2.8 小结 41
  • 第3章 Git分支机制 42
    • 3.1 分支机制简述 42
      • 3.1.1 创建新分支 44
      • 3.1.2 切换分支 45
    • 3.2 基本的分支与合并操作 48
      • 3.2.1 基本的分支操作 48
      • 3.2.2 基本的合并操作 52
      • 3.2.3 基本的合并冲突处理 53
      • 3.3 分支管理 55
    • 3.4 与分支有关的工作流 56
      • 3.4.1 长期分支 57
      • 3.4.2 主题分支 58
    • 3.5 远程分支 59
      • 3.5.1 推送 63
      • 3.5.2 跟踪分支 64
      • 3.5.3 拉取 66
      • 3.5.4 删除远程分支 66
    • 3.6 变基 66
      • 3.6.1 基本的变基操作 66
      • 3.6.2 更有趣的变基操作 69
      • 3.6.3 变基操作的潜在危害 71
      • 3.6.4 只在需要的时候执行变基操作 74
      • 3.6.5 变基操作与合并操作的对比 75
      • 3.7 小结 75
  • 第4章 Git服务器 76
  • 第5章 分布式Git 95
  • 第6章 GitHub 128
  • 第7章 Git工具 171
    • 7.3 储藏与清理 181
      • 7.3.1 储藏工作成果 181
      • 7.3.2 灵活运用储藏 183
      • 7.3.3 从储藏中创建分支 184
      • 7.3.4 清理工作 184
    • 7.4 签署工作 186
    • 7.5 搜索 189
      • 7.5.1 git grep 189
  • 总结


前言

这是对《精通Git(第2版)》的关键知识点抽取。


提示:以下是本篇文章正文内容,下面案例可供参考

第 1章 入门 1

1.1 关于版本控制 1

1.1.1 本地版本控制系统 1

1.1.2 集中式版本控制系统 2
1.1.3 分布式版本控制系统 3
1.2 Git简史 4
1.3 Git基础 4
1.3.1 快照,而非差异 4
1.3.2 几乎所有操作都在本地执行 5
1.3.3 Git的完整性 6
1.3.4 Git通常只增加数据 6
1.3.5 三种状态 7
1.4 命令行 8
1.5 安装Git 8
1.5.1 Linux上的安装方法 8
1.5.2 Mac上的安装方法 8
1.5.3 Windows上的安装方法 9
1.5.4 从源码安装 9
1.6 Git的首 次配置 10
1.6.1 用户身份 11
1.6.2 个人编辑器 11
1.6.3 检查个人设置 12
1.7 获取帮助 12
1.8 小结 12

第 2章 Git基础 13

主要内容:

  • 初始化
  • 开始或停止追踪文件、暂存或者提交更改
  • 忽略某些文件和文件模式
  • 撤销错误操作
  • 浏览项目版本历史、查看版本差异

2.1 获取Git仓库 13

2.1.1 在现有中初始化Git仓库 13

git init

2.1.2 克隆现有仓库 14

git clone xxx

创建abc目录,把xxx项目克隆到abc目录

git clone xxx abc

2.2 在Git仓库中记录变更 14

2.2.1 查看当前文件状态 15

git status

2.2.2 跟踪新文件 16

追踪一个新文件–xx

git add xx

2.2.3 暂存已修改的文件 16

暂存已修改的文件–xx

git add xx

面试问题:add的作用?add和commit的区别?
答:add是一个多功能,可以追踪新文件,也可以暂存已修改的文件。可以把git add看做“添加内容到下次提交”。

2.2.4 显示更简洁的状态信息 18

git status -s
git status --short

2.2.5 忽略文件 18

编写**.gitignore**

2.2.6 查看已暂存和未暂存的变更 19

查看当前修改和暂存区的差异

git diff

查看暂存区和上次提交的差异

git diff --staged

使用图形diff工具,书里没展开,需要自己研究,idea已经够用了

git difftool --tool-help

2.2.7 提交变更 21

git commit -m "feature/提交信息"

继续回答之前的问题(add和commit的区别?)。
提交记录(commit)记录的是暂存区中的快照。

2.2.8 跳过暂存区 22

自动把已追踪的文件添加到暂存区,然后再提交。

git commit -a -m "feature/跳过暂存区"

继续回答之前的问题(add和commit的区别?)。
commit可以跳过add。

问题:这一步是只保留修改还是把新文件也加入?
答:只有已有文件会被commit,新文件不可以,需要手动提交。

2.2.9 移除文件 23

注意:如果你真实删除了一个文件其实可以执行git add,但是如果你没有删除他,只是想从暂存区移除,那么你需要使用git rm 命令。

把文件移除状态记录到暂存区

git rm xx

把不想删除的文件从暂存区移除

git rm --cached xx

这里最有用的一个场景是忘记把.idea目录添加到.gitignore。

首先,您需要将.idea文件夹从Git版本控制中移除。为此,可以使用以下命令:

git rm -r --cached .idea

这将会从Git的暂存区(index)中删除.idea文件夹,但不会删除实际的文件。

接下来,您需要提交这个变更到本地仓库:

git commit -m "Remove .idea folder from version control"

现在,您可以将这个变更推送到远程仓库。使用以下命令:

git push origin <branch-name>

请将替换为您要推送到的分支名称,通常是主分支(例如,main或master)。

2.2.10 移动文件 24

git mv file_from file_to

相当于执行了三条命令

mv file_from file_to
git rm file_from
git add file_to

但是我目前感觉直接重命名,然后git add也是可以的,可能是版本问题吧。

2.3 查看提交历史 25

最强大的命令

git log

可以查看所有提交,包括hash、作者信息

git log -p -2

-p显示每次提交引入的差异
-2表示只输出最近两次提交

git log --stat

查看概要,包括改动文件列表、改动文件数量、每个文件有多少增删,以及总计。

git log --pretty=oneline

每次提交信息在一行显示

git log --pretty=format:"%h - %an, %ar : %s"

哈希 - 作者, 时间 : 提交主题

git log --since=2.weeks

2.4 撤销操作 30

git commit -m "info"
git add forgotten_file
git commit --amend

当遗漏了某个文件,已经提交了,可以使用–amend把遗漏的合并进之前的提交,最终只会保留一次提交。

2.4.1 撤销已暂存的文件 30

git add a
git add b
git reset HEAD a

把a、b两个文件已经放入暂存区了,又希望把a恢复到已修改但未暂存的状态。

2.4.2 撤销对文件的修改 31

一个特别危险的指令

git checkout -- file

如果确定file的修改内容不需要了,name可以用老版本把当前修改覆盖掉,不可以恢复的。
如果只是需要暂时隐藏,那么使用stash。

2.5 远程仓库的使用 32

2.5.1 显示远程仓库 32

$ git remote
origin
git remote -v
origin  git@ip:pro.git (fetch)
origin  git@ip:pro.git (push)

2.5.2 添加远程仓库 33

git remote add tm git@xx.git
git fetch tm
git merge tm/release/2.3 --allow-unrelated-histories

已有仓库,添加一个远程仓库,取了一个tm的简短的名字方便引用,git fetch tm获取tm的全部数据,后续可以访问tm的分支了,也可以和自己的分支合并。

2.5.3 从远程仓库获取和拉取数据 34

git fetch tm

获取tm的全部数据

2.5.4 将数据推送到远程仓库 34

git push origin HEAD

这是我常用的指令,推送到(push) 远端的(origin) 同名分支(HEAD)上

2.5.5 检查远程仓库 35

git remote show origin

查看远端信息,包括追踪信息,推送分支,你刚在本地创建了分支,还没有推送过,那么是没有可以推送的分支的信息的。

2.5.6 删除和重命名远程仓库 36

一般人没有这个权限的吧

在这里插入代码片

2.6 标记 36

2.6.1 列举标签 36

列举所有tag

git tag

列举特定系列tag

git tag -l "v1.2.3*"

2.6.2 创建标签 37

标签包括 注释标签 和 轻量标签

2.6.3 注释标签 37

打标签

git tag -a v1.4 -m "my version 1.4"

查看某个标签的信息

git show v1.4

2.6.4 轻量标签 38

不需要-a、-m等选项

git tag v1.4-lw

轻量标签的标签信息也少一些

git show v1.4-lw

2.6.5 补加标签 38

git tag -a v1.2 hash值

2.6.6 共享标签 39

推送标签,和远端git仓库同步标签,类似于推送分支
推送单个

git push origin [tagname]

一次全部推送

git push origin --tags

2.6.7 检出标签 39

不能检出标签,只能在标签上创建一个分支

git checkout -b version2 v2.0.0

2.7 Git别名 40

给git命令起别名,建议还是别学了

2.8 小结 41

第3章 Git分支机制 42

3.1 分支机制简述 42

git存储的是指向快照的指针

3.1.1 创建新分支 44

基于当前工作区创建新分支

git branch newbranch

3.1.2 切换分支 45

git checkout newbranch

切换分支就是将HEAD分支指向newbranch

3.2 基本的分支与合并操作 48

3.2.1 基本的分支操作 48

一个典型场景:
master分支上有个iss53问题需要修复,正在修复,发现一个紧急线上问题需要修复。

git checkout -b iss53 # 根据当前工作区切出iss53分支
vi file1
# 紧急修复
git commit -a -m "fix/修复一部分iss 53"
git checkout master
git checkout -b hotfix # 根据当前工作区切出iss53分支
vi file2
git commit -a -m "fix/hotfix"
git checkout master
git merge hotfix # hotfix是基于master的,所以master只是把指针快进了一下
git branch -d hotfix # 删除hotfix分支
git checkout iss53 # 切回iss53分支
vi file1
git commit -a -m "fix/修复完iss 53"

3.2.2 基本的合并操作 52

git checkout master
git merge iss53 # 与 hotfix 分支的合并不同,此时master不是iss53的祖先了

此时会发生合并提交,git会自动找出公共祖先做合并

3.2.3 基本的合并冲突处理 53

如果出现冲突,git会暂停合并。并标记冲突。上边是当前分支的内容,下边是合入分支的内容。
注意,我们切换到了master然后把iss53合入。

<<<<<<< HEAD: file
当前分支的内容
======
合入分支的内容
>>>>>>> iss53: file

解决冲突之后,

git add file
git commit -m "解决冲突"

3.3 分支管理 55

git branch # 查看本地所有分支
git branch -v # 查看本地所有分支 包括 哈希 状态 最后提交
git branch --merged # 查看本地当前分支包含了哪些分支。例如我从master切出然后修改,那么master是被包含的。反之,例子中master包含了iss53分支

3.4 与分支有关的工作流 56

3.4.1 长期分支 57

3.4.2 主题分支 58

3.5 远程分支 59

git fetch origin # 获取远程服务器数据,更新本地数据,其实没啥用,更新了origin的指针,不影响本地的同名分支

3.5.1 推送 63

git push origin HEAD # HEAD是同名分支的代称,也可以写成
git push origin iss53 # 这是下面的写法的简写
git push origin iss53:iss53 # 这是下面写法的简写
git push origin refs/heads/iss53:refs/heads/iss53git push origin iss53:newName # 如果希望远程换个名字

3.5.2 跟踪分支 64

如果本地分支还没有创建,那么创建一个和远程同名分支会自动跟踪

git checkout oldbran

也可以创建同时指定追踪的远程分支

git checkout -b newbran origin/master

也可以对一个分支指定追踪的远程分支

git branch -u origin/master

3.5.3 拉取 66

git fetch # 拉取
git merge # 合并

等于

git pull

3.5.4 删除远程分支 66

git push origin --delete <branch_name>

3.6 变基 66

一个分支整合另一个分支,包括 合并(merge)和变基(rebase)

3.6.1 基本的变基操作 66

合并是找到两个分支的末端,并把他们合并到一起。
变基是把某个分支的更改以补丁的形式应用到另一个分支。

git checkout iss53
git rebase master
git checkout master
git merge iss53

3.6.2 更有趣的变基操作 69

git-3-31
书中给出了这样一个案例,如果想把 3、4合并到main,而暂不处理2、5、6。可以执行

git rebase --onto main server client

含义是:将当前分支切换到client分支,找出client分支和server分支的共同祖先提交,然后把自从共同祖先以来client分支上独有的工作在mian分支上重现。

此时git树变为如下状态,9、10就是3、4在main分支上的重现。
3-32

此时可以对main分支进行快进了

git checkout main
git merge client

现在如果我们要把server分支整合进来,可以执行

git rebase main server
# git rebase [basebranch] [topicbranch]

直接对该分支执行变基操作,而不需要先切换到该分支,该命令会读取主题分支(server)上的更改,并在基础分支(master)上重现。
之后快进main

git checkout main
git merge server

3.6.3 变基操作的潜在危害 71

不要对已经存在于本地仓库之外的提交执行变基操作。

3.6.4 只在需要的时候执行变基操作 74

对已经离开本地的提交做变基,那么其他人应当执行

git pull --rebase

如果要把 –rebase 作为默认选项可以

git config --global pull.rebase true

3.6.5 变基操作与合并操作的对比 75

合并是真实的提交记录,变基是对历史记录的修改,对于本地的提交可以通过变基使其更优雅,对于已经推送到服务器的提交不要修改。

3.7 小结 75

第4章 Git服务器 76

4.1 协议 76
4.1.1 本地协议 76
4.1.2 HTTP协议 78
4.1.3 SSH协议 79
4.1.4 Git协议 80
4.2 在服务器上搭建Git 80
4.2.1 将裸仓库放置在服务器上 81
4.2.2 小型团队配置 82
4.3 生成个人的SSH公钥 83
4.4 设置服务器 84
4.5 Git守护进程 85
4.6 智能HTTP 87
4.7 GitWeb 88
4.8 GitLab 90
4.8.1 安装 90
4.8.2 管理 91
4.8.3 基本用法 93
4.8.4 协作 93
4.9 第三方托管选择 94
4.10 小结 94

第5章 分布式Git 95

5.1 分布式工作流 95
5.1.1 集中式工作流 95
5.1.2 集成管理者工作流 96
5.1.3 司令官与副官工作流 97
5.1.4 工作流小结 97
5.2 为项目做贡献 98
5.2.1 提交准则 98
5.2.2 私有小型团队 100
5.2.3 私有管理团队 105
5.2.4 派生的公开项目 110
5.2.5 通过电子邮件接受补丁的公开项目 113
5.2.6 小结 115
5.3 维护项目 115
5.3.1 使用主题分支 115
5.3.2 应用来自电子邮件的补丁 116
5.3.3 检出远程分支 118
5.3.4 确定引入内容 119
5.3.5 整合所贡献的工作结果 120
5.3.6 为发布版打标签 125
5.3.7 生成构建编号 126
5.3.8 准备发布 126
5.3.9 简报 127
5.4 小结 127

第6章 GitHub 128

6.1 账号设置与配置 128
6.1.1 SSH访问 129
6.1.2 头像 130
6.1.3 电子邮件地址 131
6.1.4 双因素身份验证 132
6.2 为项目做贡献 132
6.2.1 派生项目 132
6.2.2 GitHub流程 133
6.2.3 拉取请求的高 级用法 140
6.2.4 Markdown 144
6.3 项目维护 148
6.3.1 创建新仓库 148
6.3.2 添加协作人员 150
6.3.3 管理拉取请求 150
6.3.4 提醒和通知 155
6.3.5 特殊文件 158
6.3.6 项目管理 159
6.4 组织管理 160
6.4.1 组织的基本操作 160
6.4.2 团队 160
6.4.3 审计日志 162
6.5 GitHub脚本化 162
6.5.1 钩子系统 162
6.5.2 GitHub API 166
6.6 小结 170

第7章 Git工具 171

7.1 选择修订版本 171
7.1.1 单个修订版本 171
7.1.2 提交范围 175
7.2 交互式暂存 177
7.2.1 暂存和取消暂存文件 178
7.2.2 暂存补丁 180

7.3 储藏与清理 181

储藏(stashing)能够获得工作目录的中间状态,也就是修改过的被追踪的文件以及暂存的变更,并将中间状态保存在一个包含未完成变更的栈中。

7.3.1 储藏工作成果 181

git stash

查看存储在栈中的储藏

git stash list

重新应用某次储藏

git stash apply stash@{n}
git stash apply # 不指明则默认应用最近一次的储藏

可以在一个分支储藏,然后在另一个分支应用。

加上 –index,可以告诉该命令重新应用暂存过的变更。没看懂

git stash apply --index

apply只会尝试应用储藏过的内容,而这些内容仍然保存在栈上。想要删除,可以使用命令

git stash drop stash@{0}

7.3.2 灵活运用储藏 183

git stash默认只保存已经索引过的文件。

git stash --keep-index # 不要储藏已经用git add命令暂存过的内容
git stash -u # 如果指定了 **--include-untracked**或者 **-u**,git会储藏所有创建过的未跟踪的文件。
git stash --patch # 以交互的方式询问你哪些改动需要储藏,哪些改动需要保留在工作目录中。

7.3.3 从储藏中创建分支 184

git stash branch newbranch

7.3.4 清理工作 184

不需要储藏只想清理的内容,可以只用git clean,更安全的还是使用git stash --all

git clean -f -d # 全部删除并清空所有的子目录
git clean -d -n # 仅演示一遍,不实际执行
git clean -d -x # 删除.gitignore忽略的文件,不加-x默认不会删除

7.4 签署工作 186

7.4.1 GPG简介 186
7.4.2 签署标签 186
7.4.3 验证标签 187
7.4.4 签署提交 187
7.4.5 所有人都得签署 189

7.5 搜索 189

7.5.1 git grep 189

查看关键字,不必是当前工作区,

git grep -n text # 匹配文件: 行号 文本
git grep --count text # 匹配文件: 匹配次数
git grep -p text *.c # 查看所属方法或函数

7.5.2 Git日志搜索 190
7.6 重写历史 192
7.6.1 修改**近一次提交 192
7.6.2 修改多个提交消息 192
7.6.3 重排提交 194
7.6.4 压缩提交 195
7.6.5 拆分提交 195
7.6.6 超强命令:filter-branch 196
7.7 重置揭秘 197
7.7.1 三棵树 198
7.7.2 工作流 199
7.7.3 重置的作用 203
7.7.4 利用路径进行重置 205
7.7.5 压缩 207
7.7.6 检出 209
7.7.7 小结 210
7.8 合并的高 级用法 211
7.8.1 合并冲突 211
7.8.2 撤销合并 220
7.8.3 其他类型的合并 222
7.9 rerere 225
7.10 使用Git调试 230
7.10.1 文件标注 230
7.10.2 二分查找 232
7.11 子模块 233
7.11.1 开始使用子模块 233
7.11.2 克隆含有子模块的项目 235
7.11.3 开发含有子模块的项目 236
7.11.4 子模块技巧 245
7.11.5 子模块的问题 246
7.12 打包 248
7.13 替换 251
7.14 凭据存储 257
7.14.1 底层实现 258
7.14.2 自定义凭据缓存 259
7.15 小结 261
第8章 自定义Git 262
8.1 配置Git 262
8.1.1 客户端基本配置 262
8.1.2 Git中的配色 265
8.1.3 外部的合并与diff工具 265
8.1.4 格式化与空白字符 268
8.1.5 服务器配置 270
8.2 Git属性 270
8.2.1 二进制文件 271
8.2.2 关键字扩展 273
8.2.3 导出仓库 276
8.2.4 合并策略 277
8.3 Git钩子 277
8.3.1 安装钩子 277
8.3.2 客户端钩子 278
8.3.3 服务器端钩子 279
8.4 Git强制策略示例 280
8.4.1 服务器端钩子 280
8.4.2 客户端钩子 285
8.5 小结 288
第9章 Git与其他系统 289
9.1 作为客户端的Git 289
9.1.1 Git与Subversion 289
9.1.2 Git与Mercurial 298
9.1.3 Git与Perforce 305
9.1.4 Git与TFS 317
9.2 迁移到Git 325
9.2.1 Subversion 325
9.2.2 Mercurial 327
9.2.3 Perforce 329
9.2.4 TFS 330
9.2.5 自定义导入工具 331
9.3 小结 337
第 10章 Git内幕 338
10.1 底层命令和高层命令 338
10.2 Git对象 339
10.2.1 树对象 341
10.2.2 提交对象 343
10.2.3 对象存储 345
10.3 Git引用 346
10.3.1 HEAD 348
10.3.2 标签对象 348
10.3.3 远程引用 349
10.4 包文件 350
10.5 引用规格 352
10.5.1 推送引用规格 354
10.5.2 删除引用 354
10.6 传输协议 354
10.6.1 哑协议 355
10.6.2 智能协议 356
10.6.3 协议小结 359
10.7 维护与数据恢复 359
10.7.1 维护 359
10.7.2 数据恢复 360
10.7.3 移除对象 362
10.8 环境变量 365
10.8.1 全局行为 365
10.8.2 仓库位置 365
10.8.3 路径规格 366
10.8.4 提交 366
10.8.5 网络 366
10.8.6 差异与合并 367
10.8.7 调试 367
10.8.8 杂项 369
10.9 小结 369
附录A 其他环境中的Git 370
附录B 在应用程序中嵌入Git 381
附录C Git命令 390


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

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

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

相关文章

Python函数的高级用法

Python 的函数是“一等公民”&#xff0c;因此函数本身也是一个对象&#xff0c;函数既可用于赋值&#xff0c;也可用作其他函数的参数&#xff0c;还可作为其他函数的返回值。 使用函数变量 Python 的函数也是一种值&#xff1a;所有函数都是 function 对象&#xff0c;这意…

人工智能学习5(特征抽取)

编译环境&#xff1a;PyCharm 文章目录 编译环境&#xff1a;PyCharm 特征抽取无监督特征抽取(之PCA)代码实现鸢尾花数据集无监督特征抽取 有监督特征抽取(之LDA)代码实现,生成自己的数据集并进行有监督特征抽取(LDA)生成自己的数据集PCA降维和LDA降维对比 代码实现LDA降维对鸢…

shareMouse 使用中遇到的问题

一、shareMouse 使用中遇到的问题 1、鼠标不能移动到另一个显示器 明明是两个显示器&#xff0c;但是 只显示一个&#xff0c;鼠标也不能移到另一个显示器上 后来&#xff0c; 设置了 wrap mouse pointer around display就好了&#xff0c;虽然还是显示一个显示器&#xff0c…

SmartSoftHelp8,API专业测试工具

API专业测试工具 post get put 专业接口测试工具 提交数据接口集成 返回数据接口集成 方便快捷 中文显示 下载地址&#xff1a; https://pan.baidu.com/s/1zBgeYsqWnSlNgiKPR2lUYg?pwd8888

vue3使用vue-router路由(路由懒加载、路由传参)

vue-router 是 vue的一个插件库 1. 专门用来实现一个SPA单页面应用 2 .基于vue的项目基本都会用到此库 SPA的理解 1) 单页Web应用&#xff08;single page web application&#xff0c;SPA&#xff09; 2) 整个应用只有一个完整的页面 3) 点击页面中的链接不会刷新页面, 本…

Java包(package)

1、概念 为了更好的组织类&#xff0c;用于区别类名的命名空间&#xff0c;其实就是基于工程的一个文件路径&#xff0c;如&#xff1a; 2、作用 三个作用&#xff1a; 1&#xff09;区分相同名称的类。 2&#xff09;能够较好地管理大量的类。 3&#xff09;控制访问范围。 在…

独家揭秘:卢松松拍摄视频背后的创作过程

我是卢松松&#xff0c;点点上面的头像&#xff0c;欢迎关注我哦&#xff01; 一条视频刚刚发几分钟&#xff0c;有个粉丝就过来评论说&#xff1a; 抛开广告性&#xff0c;越来越有感觉了。 于是今天的这篇文章就来了&#xff0c;也顺便给大家分享下近期我拍视频、编辑视频的…

五年自动化测试,终于进字节跳动了,年薪30w其实也并非触不可及

一些碎碎念 什么都做了&#xff0c;和什么都没做其实是一样的&#xff0c;走出“瞎忙活”的安乐窝&#xff0c;才是避开弯路的最佳路径。希望我的经历能帮助到有需要的朋友。 在测试行业已经混了5个年头了&#xff0c;以前经常听到开发对我说&#xff0c;天天的点点点有意思没…

最新发布 Spring Boot 3.2.0 新特性和改进

一、Spring Boot 简介 Spring Boot是由Pivotal团队提供的全新框架&#xff0c;其设计目的是用来简化新Spring应用的初始搭建以及开发过程。这个框架使用了特定的方式来进行配置&#xff0c;从而使开发人员不再需要定义样板化的配置。 以下是Spring Boot的一些主要特点&#xf…

也可Adobe Animate

Animate CC 由原Adobe Flash Professional CC 更名得来&#xff0c;2015年12月2日&#xff1a;Adobe 宣布Flash Professional更名为Animate CC&#xff0c;在支持Flash SWF文件的基础上&#xff0c;加入了对HTML5的支持。并在2016年1月份发布新版本的时候&#xff0c;正式更名为…

记录一次vscode markdown的图片路径相关插件学习配置过程

插件及说明查找过程 csdn搜索markdown图片路径&#xff0c;找到关于这一款插件的回答。打开vscode拓展搜索Paste Image这款插件&#xff0c;看到下载量挺高的&#xff0c;应该不赖。 点击仓库,进入该插件开源的github仓库,查看README文件阅读说明. 淡然在Vscode 插件项目下的细…

Linux中文件的打包压缩、解压,下载到本地——zip,tar指令等

目录 1 .zip后缀名&#xff1a; 1.1 zip指令 1.2 unzip指令 2 .tar后缀名 3. sz 指令 4. rz 指令 5. scp指令 1 .zip后缀名&#xff1a; 1.1 zip指令 语法&#xff1a;zip [namefile.zip] [namefile]... 功能&#xff1a;将目录或者文件压缩成zip格式 常用选项&#xff1a…

ZLMediakit-method ANNOUNCE failed: 401 Unauthorized(ffmpeg、obs推流rtmp到ZLM发现的问题)

错误截图 解决办法 修改配置文件config.ini 改成0 修改之后 重启服务 systemctl restart zlm*推流成功

LeetCode(47)合并区间【区间】【中等】

目录 1.题目2.答案3.提交结果截图 链接&#xff1a; 合并区间 1.题目 以数组 intervals 表示若干个区间的集合&#xff0c;其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间&#xff0c;并返回 一个不重叠的区间数组&#xff0c;该数组需恰好覆盖输入中…

第九节HarmonyOS 常用基础组件5-LoadingProgress

一、LoadingProgress LoadingProgress组件用于显示加载动效的组件&#xff0c;比如应用的登录界面&#xff0c;当我们点击登录的时候&#xff0c;显示的“正在登录”的进度条状态。LoadingProgress的使用非常简单&#xff0c;只需要设置颜色和宽高就可以了。 Entry Component …

目标检测——Fast R-CNN算法解读

论文&#xff1a;Fast R-CNN 作者&#xff1a;Ross Girshick 链接&#xff1a;https://arxiv.org/abs/1504.08083 代码&#xff1a;https://github.com/rbgirshick/fast-rcnn 目录 1、算法概述2、Fast R-CNN细节2.1The RoI pooling layer2.2 Fine-tuning for detection2.3 Fast…

工业机器视觉megauging(向光有光)使用说明书(十三,资源发现bug,已经更新)

megauging&#xff08;向光有光&#xff09;旧资源有bug&#xff0c;已经更新&#xff0c;如下&#xff1a; 第一工具&#xff0c;combox默认0&#xff0c;选择后&#xff0c;鼠标点击“获取结果”&#xff0c;相机就取一帧图像处理后显示出来&#xff1a; 第一工具&#xff0…

YOLOv5算法进阶改进(7)— 将主干网络SPPF更换为SimSPPF / SPP-CSPC / SPPF-CSPC

前言:Hello大家好,我是小哥谈。SimSPPF是YOLOv6中提出的一种改进的空间金字塔池化方法,它是SPPF的升级版。SimSPPF通过在不同尺度上使用不同大小的池化核来提取特征,从而提高了检测器的性能。与SPPF相比,SimSPPF可以在不增加计算成本的情况下提高检测器的性能。本节课就教…

Flask使用线程异步执行耗时任务

1 问题说明 1.1 任务简述 在开发Flask应用中一定会遇到执行耗时任务&#xff0c;但是Flask是轻量级的同步框架&#xff0c;即在单个请求时服务会阻被塞&#xff0c;直到任务完成&#xff08;注意&#xff1a;当前请求被阻塞不会影响到其他请求&#xff09;。 解决异步问题有…

记录 | photoshop移动选区

期望达到的效果&#xff1a; 选择一块区域&#xff0c;并移动它 操作&#xff1a; (1) 选择矩形选框工具&#xff0c; (2) 对区域进行选取&#xff0c; (3) 选择移动工具&#xff0c; (4) 移动选区&#xff0c;效果如下&#xff0c;