从github/gitlab上clone下来的代码默认只有master分支,如果你老大让你在dev分支上开发这个时候该怎么办呢?
假设远程有2个分支 master和mynewbranch
在本地执行
git clone http://.......x.git
查看所有分支
git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/mynewbranch
切换到远程的mynewbranch分支并开发
git checkout -b mynewbranch origin/mynewbranch
创建并切换到mynewbranch这个分支,而mynewbranch这个分支的内容来源于远程的mynewbranch
其中origin是远程的仓库的别名,在clone的时候就已经初始化好了
origin == http://......x.git
这么做就相当于在本地有一个mynewbranch分支 在远程也有一个mynewbranch分支,而且是一一对应的
当然这两个名字也可以不一样,一般情况下我们都起一样的名字便于管理
然后就可以开发并提交代码到远程分支了!
有时候远程分支只有一个master,你们老大让你自己创建一个分支并在上面做开发,假如这个分支叫vv
那么你就需要在本地创建一个叫vv的分支,在该分支上做开发并将其推送到远程仓库
git checkout -b vv //创建并切换到vv分支上
//。。。经过多小时劳作,撸了200行代码
git add .
git commit -m "..." .
git push origin vv //把当前的分支推送到远程的vv分支
此时,远程会创建一个名字叫vv的分支
关于创建分支的细节问题
如果在master分支上创建dev分支那么,dev初始的内容是master的内容,
如果在slave分支上创建dev分支,那么dev分支的初始内容就是slave的内容