1,创建本地开发分支
git checkout -b dev (dev分支的名字)//创建分支,并切换到dev分支
git checkout -B dev(dev分支的名字)//创建分支,并切换到dev分支,-b操作的话,如果本地存在同名分支,则会操作失败,并有错误提示,而 -B则可以直接覆盖本地分支。
git branch branchName(分支的名字) //创建分支,但是没有切换分支,仍然留在当前分支
git checkout -b branchName origin/remoteBranchName //拉取远程分支,在本地创建分支
2,把分支推送到远程分支
git push origin branchName
git push origin branchNam:branchName (第一个是本地分支的名字,第二个是远程分支m名字)
以上两个命令行都可以,不过第一个通常用于本地分支名字和远程分支名字相同的情况,而第二个命令不仅可以用于本地分支名字和远程分支名字相同的操作,也可以实现本地分支名字和远程分支名字不相同的情况。
3,删除本地分分支
git branch -d br (br 要删除的分支的名字)
//注意不能删除当前所在分支,需要转到别的分支上。
//如果要删除的分支已经成功合并到当前分支,删除分支的操作会直接成功。
//如果要删除的分支没有合并到当前所在分支,则会出现提示,如果确定无须合并而要直接删除,则执行命令:
git branch -D br(分支名)
以上两个命令行,都可以。第一个比较保险些,但是会出现提示,如果没有merge到当前分支的话,是不可以删除的,所以我们在开发过程中使用第二个命令行的场景会比较多。
4,git 删除远程分支
git push origin :br (origin 后面有空格)
git push origin --delete branchName(远程分支的名字)
两个命令行都可以,我这边已经测试过了,不过第一个命令行更加的简洁,我这边使用第一个命令行比较多一些。
5,分支的重命名
git branch -m oldBranchName NewBranchName (对本地分支的重命名)
//-m不会覆盖已有分支名称,即如果名为NewBranchName的分支已经存在,则会提示已经存在了。
//如果改成-M就可以覆盖已有分支名称了,即会强制覆盖名为NewBranchName的分支,这种操作要谨慎。
5,本地更新代码或新加文件,推到远程分支
git add . // 添加文件到版本库(只是添加到缓存区),.代表添加文件夹下所有文件
git commit -m "备注" // 把添加的文件提交到版本库,并填写提交备注
到目前为止,我们完成了代码库的初始化,但代码是在本地,还没有提交到远程服务器,所以关键的来了,要提交到就远程代码服务器,进行以下两步:
git push -u origin master // 第一次推送到master远程分支
git push origin master // 第一次推送后,直接使用该命令即可推送修改
然后切换另一个分支test01:merge代码
git checkout test01
git merge master //将master的改变同步到test01上面