【无标题】

1. 分支


git中分支的概念和svn及cvs等vcs系统总的概念是一样的,但实现机制不同,git中的分支更轻量,创建和删除分支的开销极小。

使用分支的一个典型场景:
1)你需要做一个新功能的开发
2)你创建了一个分支,在这个分支上进行新功能的开发
此时你接到上线系统有一个需求紧急修复的问题,你的做法是:
1)切换到线上系统对于的分支。
2)为修改紧急问题新建一个分支(例如:issue-191206)
3)在新建的分支中修改问题,测试通过后,合并这个修改到线上分支
4)切换回你的新功能开发分支继续新功能的开发。

1.1 分支创建


git branch 分支名

该命令用来创建分支

git checkout -b  分支名

创建分支完成后,同时切换到刚创建的分支上

1.2 查看分支


git branch

绿色的小信号表示当前所在的分支。

1.3 合并


1)首先切换到需要合并到的目标分支,例如A分支合并到B分支,则B分支为合并到的目标分支
2)执行合并命令

#这里的分支名是需要合并的分支名,如上例中提到的A分支
git merge 分支名

1.4 切换分支


git checkout 分支名

1.5 删除分支

git branch -d 分支名

2. tag


tag代表了当前的提交节点,是当前节点的一个标记记录,tag的名字不能重复,tag也不可以修改,不能在一个tag上继续提交。 branch(分支)是代表的一个分支,可以分支上继续提交。

Git 支持两种标签:轻量标签(lightweight)与附注标签(annotated)。
轻量标签: 轻量标签很像一个不会改变的分支——它只是某个特定提交的引用

附注标签是存储在 Git 数据库中的一个完整对象, 它们是可以被校验的,其中包含打标签者的名字、电子邮件地址、日期时间, 此外还有一个标签信息

2.1 附注标签


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

2.2 轻量级标签


$ git tag v1.4-lw

2.3 列出已有标签


$ git tag

2.4 查看签信息和与之对应的提交信息


$ git show v1.4

2.5 如何在后期打标签


有时需要通过前面的某次提交来打一个标签(比如忘记了及时打标签,后面才想起来)可以使用如下命令


##  查看提交记录
$ git log --pretty=oneline
ee07767 (HEAD -> master, tag: v1.0.0) modified f ff
19d7f5f modified 
c90073d Merge branch 'dev' into master
cccca29 add f file
bf11147 add e file

## 通过指定的提交hash值来打标签
$ git tag -a v1.2 c90073d

2.6 通过指定的标签创建分支


$ git branch hotfix v1.0.0

注:hotfix 为分支名s                                                  v1.0.0 为标签名

2.7 删除标签


$ git tag -d v1.0.0
Deleted tag 'v1.0.0' (was ee07767)

2.8 共享标签


git push 命令并不会传送标签到远程仓库服务器上。 在创建完标签后你必须显式地推送标签到共享服务器上。 这个过程就像共享远程分支一样——你可以运行 git push origin <tagname>

$ git push origin v1.5
Counting objects: 14, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (14/14), 2.05 KiB | 0 bytes/s, done.
Total 14 (delta 3), reused 0 (delta 0)
To git@github.com:schacon/simplegit.git
 * [new tag]         v1.5 -> v1.5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值