git 分支使用

来源:互联网 发布:cc3d飞控调参软件下载 编辑:程序博客网 时间:2024/06/15 21:11

最近在公司使用git,由于之前接触不深,看了如下文章,感觉不错,分享如下:

转自 http://www.zhihu.com/question/21995370

另:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013758410364457b9e3d821f4244beb0fd69c61a185ae0000

廖雪峰大大的git分享

对git不是很熟悉,有个问题要弄清楚一下。
假如远程仓库有 dev 和 master 两个分支,master 作为一个稳定版分支,可用于直接发布产品,日常的开发则 push 到 dev 分支,那我本地是不是要从 dev 分支中创建一个本地分支,然后在这个分支的 push 的动作是默认推到远程 dev 分支上?可以的话简单写一下命令,谢谢

分一二两点回答,建议都看。
第一点是回答你的问题,第二点是更加全面的了解和其他推荐。

一、远程仓库有master和dev分支
1. 克隆代码

git clone https://github.com/master-dev.git  # 这个git路径是无效的,示例而已
2. 查看所有分支
git branch --all  # 默认有了dev和master分支,所以会看到如下三个分支# master[本地主分支] origin/master[远程主分支] origin/dev[远程开发分支]# 新克隆下来的代码默认master和origin/master是关联的,也就是他们的代码保持同步# 但是origin/dev分支在本地没有任何的关联,所以我们无法在那里开发
3. 创建本地关联origin/dev的分支
git checkout dev origin/dev  # 创建本地分支dev,并且和远程origin/dev分支关联,本地dev分支的初始代码和远程的dev分支代码一样
4. 切换到dev分支进行开发
git checkout dev  # 这个是切换到dev分支,然后就是常规的开发
5. 为了更好的理解,最好继续看看下文。

二、假设远程仓库只有mater分支
1. 克隆代码
git clone https://github.com/master-dev.git  # 这个git路径是无效的,示例而已
2. 查看所有分支
git branch --all  # 默认只有master分支,所以会看到如下两个分支# master[本地主分支] origin/master[远程主分支]# 新克隆下来的代码默认master和origin/master是关联的,也就是他们的代码保持同步
3. 创建本地新的dev分支
git branch dev  # 创建本地分支git branch  # 查看分支# 这是会看到master和dev,而且master上会有一个星号# 这个时候dev是一个本地分支,远程仓库不知道它的存在# 本地分支可以不同步到远程仓库,我们可以在dev开发,然后merge到master,使用master同步代码,当然也可以同步
4. 发布dev分支
发布dev分支指的是同步dev分支的代码到远程服务器
git push origin dev:dev  # 这样远程仓库也有一个dev分支了
5. 在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全部的改变,除非你真的知道自己在做什么
6. 删除分支
git push origin :dev  # 删除远程dev分支,危险命令哦# 下面两条是删除本地分支git checkout master  # 切换到master分支git branch -d dev  # 删除本地dev分支
7. 推荐书籍 progit.pdf
书籍格式和语言:中文、英文、PDF、ePub
下载地址:git-scm.com/book


0 0
原创粉丝点击