3.Git分支和标签管理

分支管理

创建分支

git branch (branchname)

例子

git branch test1

切换分支

git checkout (branchname)

例子

git checkout test1

分支查询

git branch

结果中*标记表示当前分支

删除分支

git branch -d (branchname)

例子

git branch -d test1

删除远程分支

$ git push origin --delete (branchname)

合并分支

$ git merge (branchname)

将当前分支合并到branchname分支中

例子

$ git merge test1

假如出现冲突,解决冲突

我们事先对test1分支中一个文件进行操作后推送到服务器,然后切换到master分支进行操作同一个文件内的同一段内容,最后提交服务器最后将master合并到test1中

Auto-merging test.txt
CONFLICT (content): Merge conflict in test.txt
Automatic merge failed; fix conflicts and then commit the result.

这是提醒你出现的冲突。这个时候查看文件提示test出现冲突

$ git status -s
UU test.txt

image

这个时候你的分支发生了变化

这个时候直接修改冲突的文件test
然后再次提交,然后就成功了
image
这里本来只有个提交成功的图的,之前使用有道笔记在工作之余写的,结果回到家中图片变没了ε=(´ο`*)))唉

标签管理

一般我们项目更新到一定阶段需要进行版本发布的时候。这个状态下的代码一般我们需要做一个标记方便后续

创建标签

$ git tag -a <tagname> 

用此命令创建标签会进入一个文本编辑页面,为标签名称,要求添加标签信息,或者使用这个命令直接进行提交

git tag -a <tagname> -m "标签备注信息"

修改已经推送的标签内容

假如在打了标签后,又发生了变化,而依旧决定使用之前的标签名称可以,施工–tags -f来强制更新标签内容

git tag <tagname> -m "修订过后的版本"
git push origin --tags -f 

查询标签

查询标签列表

$ git tag

匹配查询

查询指定规则的标签

$ git tag --list 'v*'

查询v开头的标签列表

查看标签的详细内容

$ git show <tagname>

推送标签

git push origin <tagname>

推送所有的本地标签

$ git push origin --tags

删除标签

删除本地标签

$ git tag -d <tagname>

删除远程标签

删除标签也是使用push但是和推送标签相比多了一些内容

$ git push origin :refs/tags/<tagname>

编辑标签

对历史提交内容追加标签,
首先通过日志获得提交索引

git log --pretty=oneline --abbrev-commit 

根据结果对某次提交进行标签补充

git tag <tagname> <commitIndex>

标签名,提交的索引号

切换至指定标签

和切换分支一样,使用checkout命令,不过分支名变成了标签名称

git checkout tag_name 

注意此时git处于detached HEAD状态,因为ta并不属于一个分支,而是某一时刻代码的快照,假如你需要对代码进行修改则需要给它分配一个分支

git checkout -b <branch_name> <tag_name>

<branch_name>分支名称, <tag_name>标签名称

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大·风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值