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 ...
随机推荐
- java在acm中常用基础技巧方法
java在acm中常用基础技巧方法 如果学到了新的技巧,本博客会更新~ input input-std @Frosero import java.util.*; public class Main { ...
- 树的直径变形——cf1238F
/* 题目给定一些一维线段[li,ri],要求从这些线段里挑出一些线段,每条线段对应一个点,如果两线段相交,那么点连边,这样得到的树是good-tree 现在给定一棵树,要求从该树中选出一棵子树,使这 ...
- 思维——cf1178E
一开始少看了条件:相邻两个字符不相等,字符集只有abc 那么我们取开头结尾各两个字符,一定有两个是相等的 #include<bits/stdc++.h> using namespace s ...
- NX二次开发-MFC对话框获取UG界面句柄,设置MFC对话框在UG界面固定显示位置
extern "C" DllExport void ufusr(char *param, int *retcod, int param_len) { if (UF_initiali ...
- (转)XMPP协议原理
本文介绍XMPP协议原理及相关信息. XMPP协议简介 XMPP(Extensible Messageing and Presence Protocol:可扩展消息与存在协议)是目前主流的四种IM ...
- java做题笔记
java做题笔记 1. 初始化过程是这样的: 1.首先,初始化父类中的静态成员变量和静态代码块,按照在程序中出现的顺序初始化: 2.然后,初始化子类中的静态成员变量和静态代码块,按照在程序中出现的顺序 ...
- 记录阿里云ECS搭建Wordpress(Centos7+LAMP)
占位 改变wordpress文件夹属主属组 cd /var/www/html chown -R apache:apache wordpress <VirtualHost *:> Docum ...
- leetcode.字符串.696计数二进制子串-java
1. 具体题目 给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的.重复出现的子串要计算它们出现的次数. 示例 1 : 输入: ...
- 高程(三)----数组Array
一.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上 ...
- zabbix--zabbix server的配置以及zabbix agent的安装配置
1.zabbix server端的配置在进行源码安装zabbix时已经配置好了,具体要配置的参数如下: ListenPort=10051 server服务的监听端口,默认是10051 DBHost= ...