查看分支:git branch
创建分支:git branch
切换分支:git checkout
创建+切换分支:git checkout -b
合并某分支到当前分支:git merge
删除分支:git branch -d
合并分支时,加上–no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。
开发一个新feature,最好新建一个分支;
如果要丢弃一个没有被合并过的分支,可以通过git branch -D 强行删除。
1、合并分支
git checkout dev // 切换到你所在分支dev
git merge master // merge
git push // 将本地内容push到dev分支
2、tag
git tag // 查看tag列表
git tag -a tagName -m "tag备注" // 创建tag,并备注
git push origin tagName // 提交tag
git checkout tagName // 切换分支到某tag
git tag -d tagName // 删除本地某tag
git push origin :refs/tags/tagName // 删除远程某tag
3、拉取远程分支到本地
git checkout -b 本地分支名 origin/远程分支名
4、基于远程某分支新建分支
git checkout -b newbranchname origin/oldbranchname
git push origin newbranchname
5、Git合并某个分支的某次提交到指定分支
git log //查看本次提交的commitId
git checkout branch //切换需要合并到的分支
git cherry-pick commitId //合并到本分支
git push //推送本地合并到的更新到远程仓库
6、git pull时报出与git上有冲突
git stash
git pull
git stash pop
7、删除本地分支 及远程分支
git checkout branch //删除分支前先切换到其他分支
git branch -D branch-dev // 删除本地branch-dev分支
git push origin --delete branch-dev // 删除远程branch-dev分支
8、git修改分支名称(本地以及远程)
git branch -m oldName newName
git push --delete origin oldName
git push origin newName
git branch --set-upstream-to origin/newName
9、git 回退至某个commitId
git reset --hard HEAD^ //执行回退到上一个提交记录
git reset --hard commit_id //执行回退到某个提交记录
git push -f origin master // 强制将本地代码推送至远程仓库
10、git 重命名分支名
git branch -m <name>