git分支and标签(2)

1861人浏览 / 0人评论
`分支即是平行空间,假设你在为某个手机系统研发拍照功能,代码已经完成了80%,但如果将这不完整的代码直接
提交到git仓库中,又有可能影响到其他人的工作,此时我们便可以在该软件的项目之上创建一个名叫拍照功
的分支,这种分支只会属于你自己,而其他人看不到,等代码编写完成后再与原来的项目主分支合并下即可,这
样即能保证代码不丢失,又不影响其他人的工作。

一、分支

 [root@git-01 git_data]# git log --oneline --decorate
54b1c91 (HEAD, master) rename 2 a                 #默认分支指向我最后一次的提交, HEAD头指针
c350ddf commit 2
62efaf1 commit a
bfeaae3 commit 2

创建指针

 [root@git-01 git_data]# git branch test    ##创建指针

[root@git-01 git_data]# git branch            ##查看在哪个分支下工作
* master
  test
 

切换分支

 [root@git-01 git_data]# git checkout test    #切换test分支
M    a
Switched to branch 'test'

[root@git-01 git_data]# git branch            ##查看分支
  master
* test 

 ----

创建文件开始分支上传

root@git-01 git_data]# touch test
[root@git-01 git_data]# git add .
[root@git-01 git_data]# git commit -m "commit test"
[test 7755e05] commit test
 2 files changed, 1 insertion(+)
 create mode 100644 test

[root@git-01 git_data]# git checkout master     #切换分支
Switched to branch 'master'
[root@git-01 git_data]# git branch      #查看分支
* master
  test
[root@git-01 git_data]# ls
3  4  5  a
 

[root@git-01 git_data]# touch master
[root@git-01 git_data]# git add .
[root@git-01 git_data]# git commit -m "commit master"
[master a7c35bd] commit master
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 master
 

合并分支

[root@git-01 git_data]# git merge test   #合并分支。会让填写信息,wq!保存就行

 

二、标签

标签也是指向了一次commit提交,是一个里程碑式的标签,回滚打标签直接加标签号,不需要加唯一字符串不好记
[root@git git_data]# git tag ‐a v1.0 ‐m "aaa bbb master tesing version v1.0" # ‐a指定标签名
‐m 指定说明文字
[root@git git_data]# git tag
v1.0
[root@git git_data]# git tag ‐a v2.0 dbead4c ‐m "add bbb version v2.0" # 指定某一次的提交
为标签
[root@git git_data]# git show v1.0 # 查看v1.0的信息 git show 加标签查看
[root@git git_data]# git reset ‐‐hard v2.0 # 直接还原数据到v2.0
HEAD 现在位于 dbead4c add bbb
[root@git git_data]# ll
总用量 4
‐rw‐r‐‐r‐‐ 1 root root 8 823 11:26 a
‐rw‐r‐‐r‐‐ 1 root root 0 823 11:25 b
[root@git git_data]# git tag ‐d v2.0 # 删除标签 ‐d参数

全部评论