一、远程
Git是分布式版本控制系统,最重要的优点就是远程仓库托管代码。不用自己搭建一个服务器,在github上面注册一个账户就可免费获取远程仓库。
首先需要先在github上面创建仓库。创建步骤百度google都有。
第一次推送的时候需要本地库关联远程库,使用命令git remote add origin git@server-name:path/repo-name.git
origin后面实际上是远程库的ssh地址。
关联之后,使用命令git push -u origin master第一次推送master分支的所有内容。第一次的时候需要使用 -u,在此后的每一次推送的时候只需要git push origin master就可以了。
当我们第一次开发项目的时候,我们需要从远程库获取别人的代码,这时候就需要从远程库克隆一个本地库。命令:

$ git clone git@github.com:michaelliao/gitskills.git

clone后面是git远程库ssh的地址
除了ssh地址之外,也可以使用https的地址。
二、分支管理
git作为分布式版本控制系统,多线共同开发的优点体现在分支的管理上,所有的分支提交情况git的可视化工具都可以很清晰的看得到。git的分支提交和合并十分的快。关键在于分支的切换和合并。一般在一个团队合作的项目中,会创建一个主分支master,master主分支十分稳定,仅用来发布新版本,然后团队开发都在dev分支上,给每个开发者创建一个分支,各个开发者单独开发,互不影响,开发者时不时就將开发的功能合并到dev中,然后功能点足够发布一个新版本之后再将dev合并到master分支,这样master分支就具备了每个开发者的开发的功能。
分支管理的流程如下:
1、合并分支
比如创建一个叫dev的分支,然后切换到dev分支
创建分支
$ git branch dev

切换分支git checkout 不使用--的时候是指切换都某分支。
$ git checkout dev

查看所有分支
$ git branch

现在HEAD在dev分支上,然后在dev分支进行提交
$ git add <file>
$ git commit -m "new branch first commit"

这时dev分支的工作结束了,切换回master分支
$ git checkout master

然后这时候需要将dev的内容合并到master分支上
$ git merge dev

这时候就完成了一次分支合并,因为分支的创建和合并都很快,最好的建议是master合并完文件之后建议将其他分支删除掉,但是如果还在继续开发的话则不需要了。
删除分支
$ git branch -d dev

2、分支冲突
合并分支的时候总会出现冲突, 分支冲突的原因是两个分支同时做了各自的修改,在合并的时候git就会检测到合并位置出现了两种不同的修改,出现冲突的解决办法是在master修改好冲突文件,然后重新提交就可以了。多人协作冲突,当你要提交到dev的时候发现和其他人的文件修改冲突了,可以先git pull拉取下来,然后再本地合并,解决冲突后再推送。Git用<<<<<<<,=======,>>>>>>>标记出不同分支的内容。
解决冲突之后可以使用git log命令查看分支合并情况。 

$ git log --graph --pretty=oneline --abbrev-commit

转载于:https://www.cnblogs.com/liusxg/p/5432444.html

Git远程和分支管理相关推荐

  1. Git 远程仓库分支管理

    目录 目录 速查表 关联远程代码仓库 克隆远程仓库 分支管理 创建分支 切换分支 合并分支 删除分支 解决冲突 速查表 指令 作用 git branch 查看分支 git branch newBran ...

  2. python使用git进行版本控制-分支管理

    1.远程克隆 最好的方式是先创建远程库,然后,从远程库克隆: 首先在github上创建一个新的仓库,名字叫gitskills 我们勾选Initialize this repository with a ...

  3. git版本控制以及分支管理

    git版本控制以及分支管理--一起乘坐时光机 四.深度剖析 一.版本控制---时光机穿梭 1.熟悉版本 2.版本回退 3.管理修改 1.管理修改以及理解工作的原理 2.撤销修改的内容 3.删除文件 二 ...

  4. Django实战技巧(2)-git代码仓分支管理技巧

    Django(1)-简介 Django(2)-创建项目及默认项目目录结构介绍 Django(3)-配置文件详解 Django(4)-URL和视图 Django(5)-路由配置实例 Django(6)- ...

  5. Eclipse 删除Git远程仓库分支

    Eclipse 删除Git远程仓库分支 一.步骤如下 1.选中项目 --- 右键 --- Team --- Remote --- Push --- 2.选中 "Add delete ref ...

  6. git 远程仓库管理 分支创建、管理、查看、切换

    作用: 区分生产环境代码以及开发环境代码 研究新的功能或者攻关难题 解决线上bug 特点: 项目开发中公用分支包括master.dev 分支master是默认分支,用于发布,当需要发布时将dev分支合 ...

  7. git单机, 远程仓库, 分支管理

    单机上使用git - 安装 yum install -y git mkdir /data/gitroot cd /data/gitroot git init //初始化仓库 echo -e " ...

  8. Git 远程仓库的管理和使用

    要参与任何一个 Git 项目的协作,必须要了解该如何管理远程仓库.远程仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些你只能读,另外有些可以写.同他人协作开发某 个项目时,需要管理这些远程仓库 ...

  9. Git由浅入深之分支管理

    几乎所有的版本控制系统都以分支的方式进行操作,分支是独立于项目主线的一条支线,我们可以在不影响主线代码的情况下,在分支下进行工作.对于传统的一些版本控制工具来说,我们通常需要花费比较多的时间拷贝主线代 ...

最新文章

  1. new和override
  2. 基于 Redis 实现的分布式锁
  3. LeetCode 67. Add Binary
  4. nginx如何编译安装mysql_centos系统编译安装nginx+php环境另加独立mysql教程
  5. 数值分析(1)-绪论:误差
  6. 什么是Internet cookie?
  7. ajax请求几个状态,ajax的请求步骤!每个状态值表示什么?
  8. 统一社会信用代码解析登记管理部门和机构类别
  9. 睡眠分期matlab代码,非接触式睡眠分期方法与流程
  10. Adobe Acrobat 9 Pro打印提示“你需要先安装打印机方可执行打印相关任务,例如页面设置和打印文档。”解决
  11. 企业网站排名,站内布局,不只有关键词密度
  12. 网上那些代理IP是哪儿来的
  13. CTS、CTS Verify、GTS测试以及GMS认证介绍
  14. EndNote X9 插件在word中的使用以及中文引用格式问题
  15. 最全java面试题整理(持续更新)
  16. JS - 实现word预览功能
  17. “避开”电视剧的腾讯视频为何要叫板“综艺”?
  18. java下载文件到默认浏览器路径
  19. 企业网站为什么托管服务器
  20. 3d建模自学难不难?别再被那些培训机构骗了

热门文章

  1. 自己动手丰衣足食之 jQuery 数量加减插件
  2. Ant在MyEclipse中的配置总结
  3. 摄影师张梦格App项目总结
  4. 云计算入门学习资料,linux云计算学习大纲
  5. python3 - 元组、集合
  6. Css中路径data用法
  7. FTP服务(3)实现基于文件验证的vsftpd虚拟用户
  8. am335x LCD参数更改
  9. 如何用好消息推送(JPush)为app拉新、留存、促活
  10. Android Intent 大全[转载]