[Git] 022 没有人是一座孤岛
0.回顾
- [Git] 015 远程仓库篇 第二话 关联与推送 的 "2" 中介绍过
git remotegit remote -v- 与 "status" 不同,"remote" 加了 "-v" 显示的信息更加详细
1. 补充
- 从远程仓库克隆时,"Git" 会自动把本地的 "master" 分支和远程的 "master" 分支对应起来
- 远程仓库的默认名称是 "origin"
- 若没有推送权限,就看不到 "push" 的地址
2. 推送分支
- 目前为止,我的这个仓库就推送过一次
- 上一回用的命令:
git push origin master - 是时候同步一波了,用
git push origin dev命令将 "dev" 分支“推上去”

- 既然 "dev" 都推了,那 "master" 也推了吧

知识点1
但是,并不是一定要把本地分支往远程推送,那么,哪些分支需要推送,哪些不需要呢?
master分支是主分支,因此要时刻与远程同步;dev分支是开发分支,团队所有成员都需要在上面工作,所以也需要与远程同步;bug分支只用于在本地修复 bug,就没必要推到远程了,除非老板要看看你每周到底修复了几个 bug;feature分支是否推到远程,取决于你是否和你的小伙伴合作在上面开发。
总之,就是在 Git 中,分支完全可以在本地自己藏着玩,是否推送,视你的心情而定!
3. 有两个“号”的人
3.1 来自克隆人的克隆
3.1.1 "master" 篇
- 在 Linux 下克隆 "git_note_online"


- 可以看到只有 "master" 分支被克隆下来了
3.1.2 其它分支篇
- 一条
git checkout -b dev origin/dev命令,三个作用
- 创建并切换分支
- 与远程仓库关联
- 使本地仓库的该条分支的内容与远程仓库的一致

- 在 "dev" 上给 "note_02.txt" 添加内容,然后 "push" 到远程


3.2 又见“冲突”
- 上一回冲突见:[Git] 018 冲突在所难免,需要巧妙化解
3.2.1 修改
- 在 Win10 下的 "dev" 分支修改 "note_02.txt"

3.2.2 添加、提交

3.2.3 推送

分析
- 出现了连接超时的现象,看来此时我的网络不稳定
- 我马上又试了一次,这不,成功连上了
- 但是,冲突了
- "Git" 给出了温馨提示:使用
git pull ...
3.2.4 拉
- 就像商店门上写的一样,进门要推,出门要拉

- "Git" 又给了温馨提示
- 没有当前分支的跟踪信息
- 若要合并某分支,自行查看更多细节
- 若要为当前分支设置跟踪信息,可以使用
git branch --set-upstream-to=origin/dev dev
3.2.5 设置本地 "dev" 分支与远程 "origin/dev" 分支的链接

3.2 6 再拉

3.2.7 解决冲突
- 打开 "note_02.txt"

- “定稿”

- 添加、提交

- 推

3.3 小结
- 就是个人合并分支的升级版
- 多了个与远程分支建立链接关系

这个知识点摘自瘳雪峰老师的《Git 教程》↩
[Git] 022 没有人是一座孤岛的更多相关文章
- 版本控制git之三-多人协作 变基 推送 拉取 删除远程分支
版本控制git之三-多人协作 wangfeng7399已关注0人评论350人阅读2019-02-20 21:33:08 如果你想获得一份已经存在了的 Git 仓库的拷贝,比如说,你想为某个开源 ...
- Git简单多人协作
感谢廖雪峰老师,引自他的Git教程. Git简单多人协作 首先,可以试图用git push origin <branch-name>推送自己的修改: 如果推送失败,则因为远程分支比你的本地 ...
- git入门 多人协作
当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了,并且,远程仓库的默认名称是origin. 要查看远程库的信息,用git remote: $ git r ...
- 利用git 进行多人协作开发
现在,大部分项目都是用 git 来管理代码的,但当项目变大.多人协作时,git 的使用就变得复杂了,这时就需要在 git 使用的流程上来思考如何更优的使用 git. 对于大部分 web 项目而言,并不 ...
- 使用git 高效多人合作
复习一下... 附加学习链接: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/) ...
- CentOS安装Git实现多人同步开发
描 述 要开发一个"cms系统",有2个人分别是:晓飞, 盈月.要求使用Git来进行版本控制. 项目信息 版本控制:Git 项目名称:cms 开发人员:xiaofei,yingyu ...
- git 解决多人修改相同的文件导致的冲突
git冲突处理 (场景:A和B修改相同的文件,A先提交到远程仓库,然后B提交push报错,远程仓库有更改,git自动合并失败,需要手动合并 提示错误:Automatic merge faile ...
- Git:多人推送/抓取分支事项
1.推送分支 1.1使用命令符git push origin branch-name,推送自己已修改的分支 例如git push origin master,git push origin dev. ...
- Git之多人协同开发
一.获取远程库信息 1 2 3 $ git remote -v origin https://github.com/xxxxx/node.git (fetch) origin https://gi ...
随机推荐
- 如何用redis正确实现分布式锁?
先把结论抛出来:redis无法正确实现分布式锁!即使是redis单节点也不行!redis的所谓分布式锁无法用在对锁要求严格的场景下,比如:同一个时间点只能有一个客户端获取锁. 首先来看下单节点下一般r ...
- 【LuoguP5206】[WC2019] 数树
题目链接 题意 定义 \(F(T_1,T_2)=y^{n-common}\) 其中 \(common\) 为两棵树 \(T_1,T_2\) 的公共边条数. 三种问题 1.给定 \(T_1,T_2\) ...
- APIview的请求生命周期源码分析
目录 APIview的请求生命周期源码分析 请求模块 解析模块 全局配置解析器 局部配置解析器 响应模块 异常处理模块 重写异常处理函数 渲染模块 APIview的请求生命周期源码分析 Django项 ...
- JAVA笔记14-线程
一.概念 线程:是一个程序里面不同的执行路径,每一个分支都叫线程.到现在为止我们所讲的程序分支只有一个,即main方法,称作主线程. 进程:class文件,exe文件.程序的执行过程:程序放入代码区( ...
- Memcached在Asp.net下的应用
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached ...
- mysql NULL函数 语法
mysql NULL函数 语法 作用:如果表中的某个列是可选的,那么我们可以在不向该列添加值的情况下插入新记录或更新已有的记录.这意味着该字段将以 NULL 值保存. 说明:NULL 值的处理方式与其 ...
- 【java工具类】POI导出excel
POI的maven依赖:<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi&l ...
- 策略模式------《Head First 设计模式》
第一章---策略模式 xzmxddx 学习方式:书籍<Head First 设计模式>,这本书通俗易懂,所有知识点全部取自本书. 面向对象设计原则 封装变化 多用组合,少用继承 针对接口编 ...
- JAVA支持HTTP断点续传
第一点:Java代码实现文件上传 FormFile file = manform.getFile(); String newfileName = null; String newpathname = ...
- [CSP-S模拟测试]:666(模拟)
题目描述 不忘初心. 小$\pi$假期在家无聊,打开了某弹幕直播网站. 突然,有一个精彩的镜头. 小$\pi$看到了满屏的$6$,其中,有$666$.也有$666666$.也有$6666666666. ...