git 分支管理
git练习网站:https://learngitbranching.js.org/?demo=&locale=zh_CN
0. 显示分支
| # 显示所有分支 远程+本地 git branch -a
# 仅仅显示本地分支 git branch git branch -l git branch --list
# 仅仅显示远程分支 git branch -r git branch --remote
|
1. 创建分支
1 2 3 4 5 6 7 8
| # 从当前分支签出分支(创建分支) git checkout -b branch_name
# 从当前分支复制分支 git branch -c branch_name
# 分支的建立均基于当前的分支进行 git branch branch_name
|
2. 重命名分支
本地分支重命名:参数 -m –move 表示移动、重命名,-M 表示强制移动重命名,目标分支存在会被覆盖
1
| git branch -m old_brnach_name new_branch_name
|
远程分支重命名:删除远程分支,重命名本地分支(非必要),推送分支(可指定远程分支名)
1 2 3 4 5 6 7 8
| git push --delete origin branch_name
git barnch -m branch_name new_branch_name
git push origin new_branch_name
|
3. 删除分支
已经签出的分支不支持删除
1 2 3
| git branch -d branch_name git brach -D branch_name git branch --delete branch_name
|
4. 签出分支
1 2 3 4 5
| git checkout branch_name git switch branch_name
# 签出远程分支 git checkout -b branch_name origin/remote_branch_name
|
签出上一次被签出的分支
1 2
| git checkout - git switch -
|
5. 分支的显示–日志
1 2 3 4 5 6 7 8
| # 显示当前的分支提交日志 git log
# 显示当前分支的历史 git log --graph
# 显示格式设置 git log --graph --pretty=oneline --abbrev-commit
|
6. 分支的合并
1 2
| # 将源分支合并到当前分支 git merge source_branch
|
7. 分支推送
1 2 3 4 5 6 7 8
| # 没有远程的跟踪分支 git push origin local_branch_name:remote_branch_name
# 推送并关联已有的远程分支 git push -u origin/remote_branch_name
# 已关联远程分支,直接推送 git push
|
8. 分支拉取
1 2 3 4 5 6 7 8
| # 将远程分支拉取到本地的分支上 git pull origin remote_branch_name:local_branch_name
# 将远程分支拉取到本地当前分支上 git pull origin remote_branch_name
# 已关联远程分支了,直接拉取 git pull
|