@@ -13,8 +13,9 @@ Git是一个“分布式版本管理工具”,简单的理解版本管理工
13
13
3 . 统一概念:
14
14
- 工作区:改动(增删文件和内容)
15
15
- 暂存区:输入命令:`git add 改动的文件名`,此次改动就放到了‘暂存区’
16
- - 本地仓库:输入命令:`git commit 此次修改的描述`,此次改动就放到了’本地仓库’,每个commit,我叫它为一个‘版本’
17
- - 远程仓库:输入命令:`git push 远程仓库`,此次改动就放到了‘远程仓库’(github等)
16
+ - 本地仓库(简称:本地):输入命令:`git commit 此次修改的描述`,此次改动就放到了’本地仓库’,每个commit,我叫它为一个‘版本’。
17
+ - 远程仓库(简称:远程):输入命令:`git push 远程仓库`,此次改动就放到了‘远程仓库’(github等)
18
+ - commit-id:输出命令:`git log`,最上面那行`commit xxxxxx`,后面的字符串就是commit-id
18
19
4 . 如果喜欢这个项目,欢迎Star、提交Pr、[ 反馈问题] ( https://github.com/521xueweihan/git-tips/issues ) 😊
19
20
20
21
## 目录
@@ -30,8 +31,11 @@ Git是一个“分布式版本管理工具”,简单的理解版本管理工
30
31
* [ 关联远程分支] ( #关联远程分支 )
31
32
* [ 删除本地分支] ( #删除本地分支 )
32
33
* [ 删除远程分支] ( #删除远程分支 )
33
- * [ 删除本地标签(tag)] ( #删除本地标签(tag) )
34
- * [ 删除远程标签(tag)] ( #删除远程标签(tag) )
34
+ * [ 查看标签(tag)] ( #查看标签\( tag\) )
35
+ * [ 本地创建标签] ( #本地创建标签 )
36
+ * [ 推送标签到远程仓库] ( #推送标签到远程仓库 )
37
+ * [ 删除本地标签] ( #删除本地标签 )
38
+ * [ 删除远程标签] ( #删除远程标签 )
35
39
* [ 放弃工作区的修改] ( #放弃工作区的修改 )
36
40
* [ 回到某一个commit的状态,并重新增添一个commit] ( #回到某一个commit的状态,并重新增添一个commit )
37
41
* [ 回到某个commit的状态,并删除后面的commit] ( #回到某个commit的状态,并删除后面的commit )
@@ -65,7 +69,6 @@ Git是一个“分布式版本管理工具”,简单的理解版本管理工
65
69
* [ 从包中导入分支] ( #从包中导入分支 )
66
70
* [ 执行rebase之前自动stash] ( #执行rebase之前自动stash )
67
71
* [ 从远程仓库根据ID,拉下某一状态,到本地分支] ( #从远程仓库根据ID,拉下某一状态,到本地分支 )
68
- * [ 展示当前分支的最近的tag] ( #展示当前分支的最近的tag )
69
72
* [ 详细展示一行中的修改] ( #详细展示一行中的修改 )
70
73
* [ 清除` .gitignore ` 文件中记录的文件] ( #清除`.gitignore`文件中记录的文件 )
71
74
* [ 展示所有alias和configs.] ( #展示所有alias和configs. )
@@ -161,12 +164,44 @@ git push origin --delete <remote_branchname>
161
164
git push origin :< remote_branchname>
162
165
```
163
166
164
- ## 删除本地标签(tag)
167
+ ## 查看标签(tag)
168
+ ```
169
+ git tag
170
+ ```
171
+
172
+ 展示当前分支的最近的tag
173
+ ``` sh
174
+ git describe --tags --abbrev=0
175
+ ```
176
+
177
+ ## 创建标签
178
+ ``` sh
179
+ git tag < version-number>
180
+ ```
181
+
182
+ 默认tag是打在最近的一次commit上,如果需要指定commit打tag:
183
+ ``` sh
184
+ $ git tag -a < version-number> -m " v1.0 发布(描述)" < commit-id>
185
+ ```
186
+
187
+ ## 推送标签到远程仓库
188
+ 首先要保证本地创建好了标签才可以推送标签到远程仓库:
189
+ ``` sh
190
+ git push origin < local-version-number>
191
+ ```
192
+
193
+ 一次性推送所有标签,同步到远程仓库:
194
+ ```
195
+ git push origin --tags
196
+ ```
197
+
198
+ ## 删除本地标签
165
199
``` sh
166
200
git tag -d < tag-name>
167
201
```
168
202
169
- ## 删除远程标签(tag)
203
+ ## 删除远程标签
204
+ 删除远程标签需要** 先删除本地标签** ,再执行下面的命令
170
205
``` sh
171
206
git push origin :refs/tags/< tag-name>
172
207
```
@@ -363,11 +398,6 @@ git rebase --autostash
363
398
git fetch origin pull/< id> /head:< branch-name>
364
399
```
365
400
366
- ## 展示当前分支的最近的tag
367
- ``` sh
368
- git describe --tags --abbrev=0
369
- ```
370
-
371
401
## 详细展示一行中的修改
372
402
``` sh
373
403
git diff --word-diff
0 commit comments