文章目录
帮助文档
用下面的命令,查看git branch的帮助文档
git help branch
或者
git branch --help
常用命令
下面的branchName代表真实的分支名称
列出所有的本地分支
git branch
查看所有本地分支和远程分支(远程仓库已经删除的分支在本地依然可以看到),远程分支默认用红色标示
git branch -a 或者 git branch --all
查看所有远程分支
git branch -r
新建本地分支
git branch <branchName>
切换到该分支
git checkout <branchName>
新建一个分支,并同时切换到那个分支(是上面两条语句的简写)
git checkout -b <branchName>
基于branchName1新建一个分支,并同时切换到那个分支:
branchName1 可以是一个远程分支;
git checkout -b <branchName> <branchName1>
删除本地分支
git branch -d <branchName>
或者
git branch --delete <branchName>
删除本地分支,--delete --force 的快捷方式
git branch -D <branchName>
查看当前所有本地分支的情况, 并且会显示各个分支最后一次提交信息
git branch -vv
查看当前所有本地和远程分支的情况, 并且会显示各个分支最后一次提交信息
git branch -va
将本地分支和远程分支进行关联,以后pull和push的时候,就不用指定远程分支
git branch --set-upstream-to=origin/<branch> <localBranch>
如果需要删除远程分支,请参考我的另一篇博客中的git push命令汇总:
git push
相关
git remote命令
git remote show origin 可以查看remote地址,远程分支,还有本地分支与之相对应关系等信息
git remote prune origin 删除本地那些远程仓库不存在的分支
常见问题
远程分支存在,如何创建相应的本地分支
git fetch: 相当于是从远程获取最新版本到本地,不会自动merge
如果本地没有看到远程仓库,先用git fetch命令拉取;
将远程git仓库里的指定分支拉取到本地(本地不存在的分支):拉取远程分支并创建本地分支
git checkout -b <localBranch> origin/<remoteBranch>
使用该方式会在本地新建分支x,并自动切换到该本地分支x。
采用此种方法建立的本地分支会和远程分支建立映射关系。
或者
git fetch origin <remoteBranch>:<localBranch>
使用该方式会在本地新建分支x,但是不会自动切换到该本地分支x,需要手动checkout。
注意:采用此种方法建立的本地分支不会和远程分支建立映射关系。
本地创建的分支推到远程仓库,并建立关联
本地分支推到远程仓库
git checkout master
git pull
git checkout -b release-xx-v1.0.0
通过上面的方式已经在本地创建了分支
git push origin release-xx-v1.0.0:release-xx-v1.0.0
-- 按照上面的操作,可以将本地分支推送到远程仓库;但是该方式不会将本地分支和远程进行关联;
pull 或 push 操作时,需要指定远程分支,如果下命令:
git pull <remote> <branch>
git push <remote> <branch>
例子:
git pull origin release-xx-v1.0.0
git push origin release-xx-v1.0.0
本地分支和远程分支关联,
具体有2种方式:
git branch --set-upstream-to=origin/<branch> release-xx-v1.0.0
或者
## 首次推送本地分支的时候,加上参数-u
git push origin -u release-xx-v1.0.0:release-xx-v1.0.0
远程分支已经删除,但是本地还可以看到,如何删除
git branch -a 查看所有的远程分支
发现被删除的分支仍可看到
解决方案:
git remote prune origin 删除仓库不存在的分支
git feature分支远落后于develop分支
1. 进入到自己的feature分支
git checkout <featureBranchName>
2. 把该分支上修改的内容暂存起来
git stash
3. 切到develop分支
git checkout develop
4. 拉取最新的develop分支内容
git pull
5. 切到feature分支,merge最新develop分支
git checkout <featureBranchName>
git merge develop
6. 恢复之前暂存的内容
git stash pop
如何重命名分支名字
- 重命名本地分支
如果在需要被重命名的分支上,使用下面的命令:
git branch -m <new_branch_name>
如果不在需要被重命名的分支上,使用下面的命令:
git branch -m <old_branch_name> <new_branch_name>
- 重命名远端分支(假设是在当前分支,并且远端分支与本地分支名是一致的)
重命名本地分支
git branch -m <new_branch_name>
删除远程分支
git push --delete origin <old_branch_name>
上传新命名的本地分支
git push origin <new_branch_name>
关联修改后的本地分支与远程分支
git branch --set-upstream-to=origin/<new_branch_name>
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/155856.html