- 克隆代码
git clone https://github.com/master-dev.git
这个git路径是无效的,示例而已
- 查看所有分支
git branch --all
默认只有master分支,所以会看到如下两个分支
master[本地主分支] origin/master[远程主分支]
新克隆下来的代码默认master和origin/master是关联的,也就是他们的代码保持同步
- 创建本地新的dev分支
git branch dev # 创建本地分支
git branch # 查看分支
这是会看到master和dev,而且master上会有一个星号
这个时候dev是一个本地分支,远程仓库不知道它的存在
本地分支可以不同步到远程仓库,我们可以在dev开发,然后merge到master,使用master同步代码,当然也可以同步
-
发布dev分支
发布dev分支指的是同步dev分支的代码到远程服务器
git push origin dev:dev # 这样远程仓库也有一个dev分支了 -
在dev分支开发代码
git checkout dev # 切换到dev分支进行开发
开发代码之后,我们有两个选择
第一个:如果功能开发完成了,可以合并主分支
git checkout master # 切换到主分支
git merge dev # 把dev分支的更改和master合并
git push # 提交主分支代码远程
git checkout dev # 切换到dev远程分支
git push # 提交dev分支到远程
第二个:如果功能没有完成,可以直接推送
git push # 提交到dev远程分支
注意:在分支切换之前最好先commit全部的改变,除非你真的知道自己在做什么
- 删除分支
git push origin :dev # 删除远程dev分支,危险命令哦
下面两条是删除本地分支
git checkout master # 切换到master分支
git branch -d dev # 删除本地dev分
1.创建分支
git branch develop
2.查看本地分支:
git branch
注:名称前面加* 号的是当前的分支
3.查看远程分支:
加上-a参数可以查看远程分支,远程分支会用红色表示出来(如果你开了颜色支持的话)
git branch -a
4.切换分支
git checkout branch_name
5.删除本地分支
git branch -d branch_name
6.删除远程分支
git branch -r -d origin/branch-name
git push origin :branch-name
7.如果远程新建了一个分支,本地没有该分支。
可以利用 git checkout --track origin/branch_name ,这时本地会新建一个分支名叫 branch_name ,会自动跟踪远程的同名分支 branch_name。
git checkout --track origin/branch_name
8.如果本地新建了一个分支 branch_name,但是在远程没有。
这时候 push 和 pull 指令就无法确定该跟踪谁,一般来说我们都会使其跟踪远程同名分支,所以可以利用 git push --set-upstream origin branch_name ,这样就可以自动在远程创建一个 branch_name 分支,然后本地分支会 track 该分支。后面再对该分支使用 push 和 pull 就自动同步。
git push --set-upstream origin branch_name
9.合并分支到master上
首先切换到master分支上
git checkout master
如果是多人开发的话 需要把远程master上的代码pull下来
git pull origin master
然后我们把dev分支的代码合并到master上
git merge dev
然后查看状态
git status
$ git log --graph --pretty=oneline --abbrev-commit
-
git add -A 保存所有的修改
-
git add . 保存新的添加和修改,但是不包括删除
-
git add -u 保存修改和删除,但是不包括新建文件。