Skip to content

Commit 915c057

Browse files
author
Administrator
committed
update git and github
1 parent d6ce6ec commit 915c057

11 files changed

+429
-148
lines changed

About.md

-70
This file was deleted.

Git/12-Git_Set_upstream_branch.md

+65
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# Git 如何设置上游分支 upstream?
2+
3+
## 1. 背景
4+
当您想要克隆一个新的存储库或使用各种功能分支时,您需要知道如何使用上游分支以及如何设置它们。本文将告诉您如何设置上游分支,它还会告诉您哪个 git 本地分支正在跟踪哪个上游远程分支。
5+
6+
## 2. 准备
7+
- 在本地计算机上安装并配置 Git。
8+
- 本地存在克隆的 Git 存储库或您自己的 Git 项目
9+
10+
## 3. 什么是 Git 上游分支(upstream)?
11+
当您想从远程存储库(如 GitHub 或 Bitbucket)检出 git 中的分支时,“上游分支”是托管在 Github 或 Bitbucket 上的远程分支。每当您发出基本上没有参数的普通 `git fetch/git pull` 时,它就是您从中获取/拉出的分支。
12+
13+
14+
## 4. 如何在 Git 中设置上游分支
15+
对上游分支使用带有“-u”选项的 Git Push 命令。
16+
17+
## 5. 使用 Git Push 命令设置上游分支
18+
创建一个名为“的新分支并使用`-b`选项切换到当前分支
19+
创建一个名为“的新分支并使用-b选项切换到当前分支
20+
21+
```bash
22+
git checkout -b <分支名称>
23+
```
24+
25+
切换分支确认出现如下:
26+
![](https://img-blog.csdnimg.cn/44f0addd70c344249986a06647a715ca.png)
27+
当当前分支('new_branch')没有设置上游分支时,我们尝试运行命令“Git push”。在cmd中运行以下命令后:
28+
29+
![](https://img-blog.csdnimg.cn/7e501d36bee8471fa9089515dd4c5122.png)
30+
现在,您需要使用带有 `-u` 选项的 Git push 命令来设置上游分支。将 `<branch name>` 替换为您的分支名称。
31+
32+
```bash
33+
git push -u origin <分支名>
34+
```
35+
36+
或者,您也可以使用“`–set-upstream`”命令来设置上游分支
37+
38+
```bash
39+
git push --set-upstream origin <分支名称>
40+
```
41+
![](https://img-blog.csdnimg.cn/eb49e97d4a394129850a53563c207d4f.png)
42+
43+
## 6. 如何在 Git 中更改上游分支
44+
现在,您需要跟踪一个新的上游分支而不是刚刚设置运行的分支:
45+
46+
```bash
47+
git branch -u <远程/分支名称>
48+
```
49+
50+
```bash
51+
git branch main -u <origin/new_branch>
52+
git branch main -u <源/主>
53+
```
54+
55+
终端打印出确认消息:
56+
![](https://img-blog.csdnimg.cn/dd0a8ecc5d8a4f65868e4d8f21a1442a.png)
57+
![](https://img-blog.csdnimg.cn/bd3eb484881942038b88db110919c234.png)
58+
## 7. 如何检查哪些 Git 分支正在跟踪哪些上游分支
59+
现在,您可以使用带有 -vv 选项的“Git 分支”列出所有跟踪上游分支的分支:
60+
![](https://img-blog.csdnimg.cn/45857cda4bac4925839bac58cb293fe8.png)
61+
主分支有一个 `[origin/main]` 的跟踪分支。测试分支有一个跟踪分支`[origin/test]``new_branch` 分支有一个跟踪分支`[origin/new_branch]`
62+
63+
64+
参考:
65+
- [How to Set Upstream Branch on Git?](https://www.geeksforgeeks.org/how-to-set-upstream-branch-on-git/)
+61
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# Git Fetch 和 Git Pull 的区别
2+
3+
4+
## 1. 介绍
5+
`Git Fetch` 是一个命令,它告诉本地存储库远程存储库中有可用的更改,而不会将更改带入本地存储库。另一方面,`Git Pull` 将远 程目录更改的副本带入本地存储库。让我们借助示例分别查看 Git Fetch 和 Git Pull。
6+
7+
```bash
8+
git pull = git fetch + git merge
9+
```
10+
11+
## 2. Git Fetch
12+
让我们创建一个名为demo.txt的文件,其中包含“ Hello Geeks”内容,将目录初始化为 git 存储库,并将更改推送到远程存储库。
13+
14+
```bash
15+
git init
16+
git add <Filename>
17+
git commit -m <Commit Message>
18+
git remote add origin <Link to your remote repository>
19+
git push origin <branch name>
20+
```
21+
![](https://img-blog.csdnimg.cn/ef6236fd893648ccac0865a5c6b2218f.png)
22+
23+
现在,我们在远程存储库中 有了我的`demo.txt`
24+
![](https://img-blog.csdnimg.cn/d6887c0bfd66444d9364c5e78985fad7.png)
25+
本地和远程存储库现在是同步的,并且在两个地方具有相同的内容。现在让我们更新远程存储库中的 demo.txt 。![](https://img-blog.csdnimg.cn/ad8ebd71e4c742d19fa2655ea5086acb.png)
26+
现在,由于我们已经远程更新了demo.txt,让我们将更改带到我们的本地存储库。我们的本地存储库只有 1 次提交,而远程存储库现在 有 2 次提交(观察从`4c4fcb8`开始的第二次提交)。让我们使用`git fetch`命令在本地存储库中查看远程存储库中是否有更改。在此 之前,让我们使用`git log`命令查看我们之前的提交。
27+
![](https://img-blog.csdnimg.cn/e2f883a65ba44c91be01fbad8d21984b.png)
28+
我们可以看到,在使用`git fetch`之后,我们得到了在远程存储库中完成了一些提交的信息。(注意`4c4fcb8`是我们在远程存储库中第二次提交的首字母)。要将这些更改合并到我们的本地存储库中,我们需要使用`git merge origin/<branch name>`命令。
29+
![](https://img-blog.csdnimg.cn/f68211fc5dde4251a2c2db814d4ca0c3.png)
30+
让我们使用`git log` 命令查看我们在本地存储库中的提交。
31+
![](https://img-blog.csdnimg.cn/c5109e817ed441519ccf28bc256c17d4.png)
32+
我们在本地存储库中提交了远程存储库。这就是 `git fetch` 的工作原理。现在让我们看一下`git pull`命令。
33+
34+
## 3. Git Pull
35+
让我们对远程存储库中的 demo.txt 文件进行更多更改。
36+
![](https://img-blog.csdnimg.cn/7a0f8a5b668046bcb16cd71e484cb16c.png)
37+
现在,我们在远程存储库中有 3 个提交,而在我们的本地存储库中有 2 个提交。(注意以09d828f开头的第三次提交)。现在让我们使 用`git pull origin <branch name>`命令将此更改带到我们的本地存储库。
38+
39+
![](https://img-blog.csdnimg.cn/aa922456e3594f388487d8a89a94ac26.png)
40+
我们可以看到,在git pull命令的帮助下,我们直接获取远程存储库并将其与本地存储库合并。
41+
42+
43+
## 4. 结论
44+
45+
46+
```bash
47+
git pull = git fetch + git merge
48+
```
49+
现在我们的远程和本地存储库再次相互同步。因此,从以上例子中,我们可以得出结论:
50+
|Git fetch |Git pull|
51+
|--|--|
52+
|在不合并到当前分支的情况下提供来自远程存储库的新更改的信息| 从远程存储库中获取所有更改的副本并将它们合并到当前分支中|
53+
|存储库数据在 .git 目录中更新| 直接更新本地仓库|
54+
|可以审查提交和更改 |立即将更改更新到本地存储库。|
55+
|没有合并冲突的可能性。 |如果远程和本地存储库在同一位置进行了更改,则可能会发生合并冲突。|
56+
|Git fetch 的命令是 git fetch<remote> |Git Pull 的命令是 git pull<remote><branch>|
57+
|Git fetch 基本上将提交导入到本地分支,以便及时了解每个人正在处理的内容。| Git Pull 基本上使本地分支与远程副本一起 更新,远程副本也将更新其他远程跟踪分支。|
58+
59+
60+
参考:
61+
- [Git – Difference Between Git Fetch and Git Pull](https://www.geeksforgeeks.org/git-difference-between-git-fetch-and-git-pull/?ref=rp)

Git/14_Git_fetch_prune.md

+59
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
# Git remote prune、Git prune 和 Git fetch –prune 的区别
2+
3+
4+
## 1. 背景
5+
Git 的一大优点是它*在删除数据时非常小心*。这使得 Git 中的提交或其他有价值的数据很难丢失!这样做的一个小缺点是您有时可能 会看到实际上不再需要的陈旧数据。最好的例子之一是对已删除的远程分支的引用:假设您的一位队友删除了共享远程存储库中的一个分支;该分支仍会为您显示,除非您明确指示 Git 进行清理。
6+
7+
8+
## 2. 方法
9+
在远程存储库上使用“prune”:
10+
“prune”可作为 `git fetch``git remote` 命令的选项使用。(`git prune` 命令——在垃圾收集期间使用。)。使用 prune 的最简 单方法是在获取时将其作为选项提供:
11+
12+
```bash
13+
git fetch --prune origin
14+
```
15+
如果您只想`*`执行prune而不`*`获取远程数据,您可以将它与 `git remote` 一起使用:
16+
17+
```bash
18+
git remote prune origin
19+
```
20+
两种情况下的结果是相同的:对指定远程存储库中不再存在的远程分支的陈旧引用将被删除。顺便说一句:你永远不必担心你当地的分支机构,因为修剪永远不会影响那些。
21+
22+
克隆同一个 repo 两次,以便您正确理解 `git prune` 的工作原理。
23+
24+
```bash
25+
git clone repolink
26+
```
27+
![](https://img-blog.csdnimg.cn/69207dae53ea4315b5c30dce420b52bf.png)
28+
- 在一个回购上创建一个分支并在其副本上获取它
29+
- 从一个回购中删除该分支
30+
- 当您在另一个仓库中列出分支时,它不会得到更新。
31+
32+
```bash
33+
git branch
34+
git push origin HEAD
35+
git branch -r
36+
```
37+
![](https://img-blog.csdnimg.cn/3f336eb1ebb446f88d13cb18a8294edb.png)
38+
使用 `git fetch –prune`
39+
40+
如果我们使用 prune 命令删除,该分支将在 2nd repo 中自动更新
41+
42+
```bash
43+
git fetch --prune
44+
```
45+
![](https://img-blog.csdnimg.cn/7b5af25b6f1f42c09a6f74e0bd6b1c69.png)
46+
假设在某些情况下您希望`*`*执行prune并且不获取远程数据
47+
48+
```bash
49+
git remote prune origin
50+
```
51+
如果你想自动prune自己
52+
53+
```bash
54+
git config —global fetch.prune true
55+
```
56+
57+
参考:
58+
- [Difference Between Git remote prune, Git prune and Git fetch –prune](https://www.geeksforgeeks.org/difference-between-git-remote-prune-git-prune-and-git-fetch-prune/?ref=rp)
59+
+130
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
# gitbook 插件:音乐
2+
3+
@[toc]
4+
5+
## 1. gitbook-plugin-zymplayer 插件
6+
7+
[gitbook-plugin-zymplayer](https://github.com/T-miracle/gitbook-plugin-zymplayer) 插件 可以播放音乐。
8+
9+
### 1.1 配置
10+
11+
```bash
12+
"plugins": [ "zymplayer" ]
13+
14+
"pluginsConfig": {
15+
"zymplayer": {
16+
"element": "body",
17+
"width": "350px",
18+
"mode": "random",
19+
"show": "all",
20+
"list": {
21+
"path": "assets/music/musicList.json",
22+
"height": 180,
23+
"expand": true
24+
},
25+
"position": {
26+
"pos": "fixed",
27+
"right": "0px",
28+
"bottom": "0px"
29+
}
30+
}
31+
}
32+
```
33+
音乐列表存放`musicList.json`、音乐mp3在目录`song`、音乐图片在目录`img`
34+
35+
```bash
36+
$ ls assets/music/
37+
img musicList.json song
38+
39+
$ ls assets/music/img/
40+
Angel_Lover-Prendre_sa_main.png dylanf_卡农.jpg Peter_Jeremias-Dusk.jpg 张宇桦_大自然的空气_钢琴曲.jpg 陈光荣_Tanning_In_Your_Sunray.jpg
41+
Denean-Vow_to_Virtue.jpg Jocelyn_Pook_Russian_Red-Loving_Strangers.jpg Vexento_Anesthesia.jpg 群星_森林之歌.jpg
42+
43+
$ ls assets/music/song/
44+
Angel_Lover-Prendre_sa_main.mp3 dylanf_卡农.mp3 Peter_Jeremias-Dusk.mp3 张宇桦_大自然的空气_钢琴曲.mp3 陈光荣_Tanning_In_Your_Sunray.mp3
45+
Denean-Vow_to_Virtue.mp3 Jocelyn_Pook_Russian_Red-Loving_Strangers.mp3 Vexento_Anesthesia.mp3 群星_森林之歌.mp3
46+
```
47+
`musicList.json`内容如下:
48+
49+
```bash
50+
cat assets/music/musicList.json
51+
[
52+
{
53+
"name": "Tanning In Your Sunray",
54+
"artist": "陈光荣",
55+
"url": "assets/music/song/陈光荣_Tanning_In_Your_Sunray.mp3",
56+
"cover_art_url": "assets/music/img/陈光荣_Tanning_In_Your_Sunray.jpg",
57+
"duration": "03:38"
58+
},
59+
{
60+
"name": "Prendre sa main",
61+
"artist": "Angel Lover",
62+
"url": "assets/music/song/Angel_Lover-Prendre_sa_main.mp3",
63+
"cover_art_url": "assets/music/img/Angel_Lover-Prendre_sa_main.jpg",
64+
"duration": "03:31"
65+
},
66+
{
67+
"name": "Vow to Virtue",
68+
"artist": "Denean",
69+
"url": "assets/music/song/Denean-Vow_to_Virtue.mp3",
70+
"cover_art_url": "assets/music/img/Denean-Vow_to_Virtue.jpg",
71+
"duration": "03:43"
72+
},
73+
74+
{
75+
"name": "Loving Strangers",
76+
"artist": "Jocelyn Pook Russian Red",
77+
"url": "assets/music/song/Jocelyn_Pook_Russian_Red-Loving_Strangers.mp3",
78+
"cover_art_url": "assets/music/img/Jocelyn_Pook_Russian_Red-Loving_Strangers.jpg",
79+
"duration": "03:43"
80+
},
81+
{
82+
"name": "Dusk",
83+
"artist": "Peter Jeremias",
84+
"url": "assets/music/song/Peter_Jeremias-Dusk.mp3",
85+
"cover_art_url": "assets/music/img/Peter_Jeremias-Dusk.jpg",
86+
"duration": "02:05"
87+
},
88+
{
89+
"name": "Anesthesia",
90+
"artist": "Vexento",
91+
"url": "assets/music/song/Vexento_Anesthesia.mp3",
92+
"cover_art_url": "assets/music/img/Vexento_Anesthesia.jpg",
93+
"duration": "03:41"
94+
},
95+
{
96+
"name": "森林之歌",
97+
"artist": "群星",
98+
"url": "assets/music/song/群星_森林之歌.mp3",
99+
"cover_art_url": "assets/music/img/群星_森林之歌.jpg",
100+
"duration": "02:04"
101+
},
102+
103+
{
104+
"name": "张宇桦_大自然的空气_钢琴曲",
105+
"artist": "张宇桦_大自然的空气_钢琴曲",
106+
"url": "assets/music/song/张宇桦_大自然的空气_钢琴曲.mp3",
107+
"cover_art_url": "assets/music/img/张宇桦_大自然的空气_钢琴曲.jpg",
108+
"duration": "02:22"
109+
},
110+
{
111+
"name": "卡农",
112+
"artist": "dylanf",
113+
"url": "assets/music/song/dylanf_卡农.mp3",
114+
"cover_art_url": "assets/music/img/dylanf_卡农.jpg",
115+
"duration": "05:00"
116+
}
117+
]
118+
119+
```
120+
121+
### 1.2 安装
122+
123+
```bash
124+
gitbook install
125+
```
126+
### 1.3 效果
127+
![在这里插入图片描述](https://img-blog.csdnimg.cn/f5d6bc57a2c648979b72ec8f97ff697e.gif#pic_center)
128+
### 1.4 评论
129+
插件效果很好,但存在bug,影响logo暂时,子目录下拉显示等等。
130+
综合指数::star::star::star:

Gitbook/Plugins/test.txt

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
2+
3+
4+
xx zz zz zz
5+
XX xx
6+
7+
8+
9+

0 commit comments

Comments
 (0)