git分支管理学习笔记:
建立dev分支:
git branch dev
查看分支:
git branch
切换分支:
git checkout dev
建立并切换分支:
git checkout dev -b zhf
提交分支:
git push origin zhf
本地建立分支并关联远程分支:(很重要,只有这样才会达到内容同步的效果)
git checkout -b zhf origin/zhf
抓取分支:
从远程库clone时,默认只能看到master。想在dev分支上开发,就必须建立origin的dev分支到本地:
git checkout -b dev origin/zhfhtml
你想往哪一个分支上合并,则须要先切换到哪一个分支上
例如合并到master分支:
git checkout master
git merge zhf
上面说的也不对,通常是先合并到dev分支上面的,因此:
git checkout dev
git merge zhf
上面的操做也仅仅是在本地仓库完成,没有提交到远程仓库中去。
本人库下的内容能够随便提交到远程仓库,可是不能够轻易合并到dev或者master分支上面去。
确认好以后再作提交。
合并的时候容易发生冲突。
别人已经改过的代码和本身的代码在同一文件中,那不可能直接将改过的代码直接合并到主分支上面去。这样不就是覆盖了吗?那该怎么处理?
若是保留,那就须要手动修改合并以后的内容了。
将须要保留的内容保留,不要保留的内容去除。git
合并完以后还得再提交一次。
git add .
git commit -m "合并"
而后再push学习
删除分支:
git branch -d 分支名
删除远程分支:
git push origin :分支名
git push origin --delete 分支名htm
若是推送失败,则由于远程分支比你的本地更新,须要先用git pull 试图合并。
若是git pull 提示
"no tracking infomation" ,则说明本地分支和远程分支的连接没有建立,用命令git branch --set-upstream branch-name origin/branch-nameblog
标签管理:
意义:发布一个版本时,咱们一般先在版本库中打一个标签(tag),这样,就惟一肯定了打标签时刻的版。未来不管何时,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。因此,标签也是版本的一个快照。开发
以后再打上一个版本:(v1.1为本身自定义的新版本号, 以后的一串字符为提交版本的id"
git tag v1.1 87a94a1d9e5a77a52c89a80c28e73ae3c6bcf518get
切换版本:
git checkout v1.1同步
其余命令:
查看全部标签
git tag
指定commd id 标签
git tag 标签名 commitID
切换到指定标签:
git checkout 标签名
删除标签
git tag -d
推送标签到远程:
git push origin 标签名
一次性推送所有还没有推送到远程的本地标签:
git push origin --tags
删除已经推送到远程的标签:
先删除本地标签:
git tag -d 标签名
再从远程删除:
git push origin :r it
其余:io
git pull命令要常常用
本地建立分支并关联远程分支:(很重要,只有这样才会达到内容同步的效果)
git checkout -b zhf origin/zhf
有一个主支和分支的概念,在提交以前,须要先保证主支的一致性,而后才能提交本身的代码。
将分支上的内容进行更新:
git push origin zhf