Git 远程仓库分支管理
目录
速查表
| 指令 | 作用 |
|---|---|
| git branch | 查看分支 |
| git branch newBranchName | 创建分支 |
| git checkout branchName | 切换分支 |
| giit checkout -b newBranchName | 创建+切换分支 |
| git merge branchName | 合并分支到当前分支 |
| git branch -d branchName | 删除分支 |
关联远程代码仓库
登录一个远程仓库首先需要的是身份验证, 一般会使用 SSH 的方式, 常用的 Github 和 Gerrit 都会需要你提供 SSH 公钥, 来确定对仓库进行操作的是否是可信任的本人. 如果你在 Github 上有一个空的远程代码仓库, 那么我们可以从这个远程仓库克隆出新的本地仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到 GitHub 远程仓库中。
EG: 将本地的 jmilkfanDir 仓库关联至远程的 origin(Github默认) 仓库, 并把本地库的所有内容推送到远程库上
cd jmilkfanDir
git remote add origin git@github.com:JmilkFan/jmilkfanDir # 添加一个新的远程仓库
git push -u origin master # 将当前的 master 分支关联远程 origin 并且把内容推送上去;
NOTE: 由于远程库是空的,我们第一次推送 jmilkfanDir master 分支时,加上了 -u 参数,Gi t不但会把本地的 master 分支内容推送的远程新的 master 分支,还会把本地的 master 分支和远程的 master 分支关联起来,在以后的推送或者拉取时就可以简化指令。
克隆远程仓库
git clone https://github.com/JmilkFan/my-code-repertory.git
cd my-code-repertory
分支管理
在开发一个功能模块时, 我们首先会从远程代码仓库克隆 master 分支到本地, 但是强烈的建议不要在 master 上直接进行开发. 这样会非常容易出现冲突的情况, 所以我们一般会在 master 的基础上再创建一个新的分支来进行开发工作.
我们创建了一个属于自己的分支,别人是看不到的,我们在自己的分支上进行开发,想提交就提交,直到开发完毕后,再一次性合并到原来的 master 分支上,这样,既安全,又不影响别人工作。
创建分支
git branch newBranchName # 创建分支, 但不切换
# Or
git checkout -b jmilkfan-dev # -b: 创建并切换到 jmlkfan-dev 分支
git branch
切换分支
git checkout branchName
# EG:
git checkout master
git branch
合并分支
git branch # 查看当前分支
git merge jmilkfan-dev # 合并指定分支到当前分支
删除分支
git branch -d jmilkfan-dev
# Or
git branch -D jmilkfan-dev # 强制删除
解决冲突
- 查看冲突的内容
git diff [filename]
手动合并冲突内容
重新提交合并
git add .
git commit
git merge branchName
- 查看分支合并情况
git log --graph --pretty=oneline --abbrev-commit
Git 远程仓库分支管理的更多相关文章
- Git 远程仓库的管理和使用
要参与任何一个 Git 项目的协作,必须要了解该如何管理远程仓库.远程仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些你只能读,另外有些可以写.同他人协作开发某 个项目时,需要管理这些远程仓库 ...
- Git远程和分支管理
一.远程 Git是分布式版本控制系统,最重要的优点就是远程仓库托管代码.不用自己搭建一个服务器,在github上面注册一个账户就可免费获取远程仓库. 首先需要先在github上面 ...
- wghd的git代码仓库分支管理说明【转】
英文原文:http://www.nvie.com/posts/a-successful-git-branching-model/ 原文作者:Vincent Driessen 本文经Linux大棚博主总 ...
- git教程(远程仓库和管理分支)
在github上新建了一个仓库,然后相与本地的仓库联系起来 $ Git remote add origin https://github.com/liona329/learngit.git fatal ...
- git远程仓库创建及权限管理(一)单个项目
最近接手公司git权限管理,既然负责此事个人觉得应该深入学习下,不仅为当前工作也为进一步发展.网上查找了一番,找到了完整的教程,所以这里不再一步一步描述,具体链接已给出,本文只对操作过程中遇到的问题的 ...
- GIT 远程仓库:添加远程库、从远程库克隆
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了. 可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Gi ...
- 10.Git远程仓库
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了.可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Git ...
- python使用git进行版本控制-分支管理
1.远程克隆 最好的方式是先创建远程库,然后,从远程库克隆: 首先在github上创建一个新的仓库,名字叫gitskills 我们勾选Initialize this repository with a ...
- Linux下Git远程仓库的使用详解
Git远程仓库Github 提示:Github网站作为远程代码仓库时的操作和本地代码仓库一样的,只是仓库位置不同而已! 准备Git源代码仓库 https://github.com/ 准备经理的文件 D ...
随机推荐
- 【Flutter学习】之VSCode下Flutter常用终端命令行
Flutter 常用命令行 相关项目操作 查看Flutter版本 查看当前版本 flutter --version 查看所有版本 flutter version 打印所有命令行用法信息 flutter ...
- Android中的Handler,Looper,Message机制
Android的消息处理有三个核心类:Looper,Handler和Message.其实还有一个Message Queue(消息队列),但是MQ被封装到Looper里面了,我们不会直接与MQ打交道,因 ...
- Shell4
ssh 192.168.4.5>提示continue,连接过的主机不会提示>连接过的主机 文件存放位置:/root/.ssh/known_hosts ################### ...
- Linux下安装PHP的curl扩展
先安装依赖包: yum install curl curl-devel 找到PHP的安装包,cd 进入安装包 cd php-5.6.25/ext/curl phpize 如果报找不到phpize就补全 ...
- hive调用MapReduce之后遇到kill command之后卡住或者一直开在MapReduce之前
https://blog.csdn.net/weixin_42158422/article/details/88876943
- PHP面试 PHP基础知识 二(常量及数据类型)
常量及数据类型 PHP八种数据类型 四种标量类型 字符串(string).布尔(boolean).浮点(float/double).整型(integer) 两种复合类型 数组(array).对象(ob ...
- 设置单网卡双ip
环境如下: [root@localhost ~]# cat /etc/redhat-releaseCentOS Linux release 7.7.1908 (Core) 安装时选择的最小化安装 -- ...
- python库argparse中type的新奇指定方法
最近在看一些项目的源码,总是能学到好多东西. 关于arparse中type的类型指定 不止可以指定常规类型,还可以加一些自己类型判断,具体用法如下(来源): def str2bool(v): &quo ...
- poj 1905 图形推算+二分
参考博客: 题意: 一根两端固定在两面墙上的杆 受热弯曲后变弯曲 求前后两个状态的杆的中点位置的距离 分析:见博客 代码: #include<stdio.h> #include<io ...
- 前端跨域实现的几种方式?及使用Nginx反向代理配置。
早期为了防止CSRF(跨域请求伪造)的攻击,浏览器引入了同源策略(SOP)来提高安全性.而所谓"同源策略",即同域名(domain或ip).同端口.同协议的才能互相获取资源,而不能 ...