目录

速查表

指令 作用
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 远程仓库分支管理的更多相关文章

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

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

  2. Git远程和分支管理

    一.远程       Git是分布式版本控制系统,最重要的优点就是远程仓库托管代码.不用自己搭建一个服务器,在github上面注册一个账户就可免费获取远程仓库.      首先需要先在github上面 ...

  3. wghd的git代码仓库分支管理说明【转】

    英文原文:http://www.nvie.com/posts/a-successful-git-branching-model/ 原文作者:Vincent Driessen 本文经Linux大棚博主总 ...

  4. git教程(远程仓库和管理分支)

    在github上新建了一个仓库,然后相与本地的仓库联系起来 $ Git remote add origin https://github.com/liona329/learngit.git fatal ...

  5. git远程仓库创建及权限管理(一)单个项目

    最近接手公司git权限管理,既然负责此事个人觉得应该深入学习下,不仅为当前工作也为进一步发展.网上查找了一番,找到了完整的教程,所以这里不再一步一步描述,具体链接已给出,本文只对操作过程中遇到的问题的 ...

  6. GIT 远程仓库:添加远程库、从远程库克隆

    到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了. 可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Gi ...

  7. 10.Git远程仓库

    到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了.可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Git ...

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

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

  9. Linux下Git远程仓库的使用详解

    Git远程仓库Github 提示:Github网站作为远程代码仓库时的操作和本地代码仓库一样的,只是仓库位置不同而已! 准备Git源代码仓库 https://github.com/ 准备经理的文件 D ...

随机推荐

  1. 云原生数据库崛起,阿里云POLARDB当选世界互联网领先科技成果!

    第六届世界互联网大会来了!千年水乡古镇乌镇又一次吸引了全世界的目光. 刚刚,阿里云自研数据库POLARDB在会上当选世界互联网领先科技成果.POLARDB解决了企业在云时代的数据库难题,帮助企业在数小 ...

  2. delphi 给程序加托盘图标

    一些程序运行时,会在桌面的右下角显示一个图标(任务栏的右边),这类图标称为 托盘.托盘是一个PNotifyIconDataA类型的结构,要增加托盘图标其实就是对结构PNotifyIconDataA的操 ...

  3. c# api身份验证和授权

    授权 1. 全局 config.Filters.Add(new AuthorizeAttribute()); 2.控制器级别 [Authorize] public class HelloControl ...

  4. jQuery 事件委派

    /******************************************************************/ $(function(){ //live()事件委派,后续添加 ...

  5. Module not found: Error: Can't resolve "xxx" in "xxx"

    报错信息 ERROR in multi ./src/index.js ./dist/bundle.js Module not found: Error: Can't resolve './dist/b ...

  6. Java对图片压缩

    背景:图片上传服务器时候的大小限制取消之后,上传图片太大导致前台显示加载缓慢 需求:服务器对接收到的图片进行压缩 方法:1.上传后的文件保存在临时文件夹“/usr/upload/tmp”    2.压 ...

  7. Eureka 系列(01)最简使用姿态

    目录 Eureka 系列(01)最简使用姿态 0. Spring Cloud 系列目录 - Eureka 篇 1. 服务发现与发现 1.1 服务发现(Service Discovery) 1.2 服务 ...

  8. 这是<一起找打的约定>的改良版本

    -- CREATE TABLE class ( -- cid INT(25)auto_increment PRIMARY KEY, -- caption VARCHAR(50) not NULL -- ...

  9. mongo之find结果对象map实例处理

    find 找到结果对象列表 res = await SS_StudentsLeaveTask.find(filter=_filter) self.resData = map(lambda x: str ...

  10. ARM 汇编 数据处理指令

    一. 如何把数据放到寄存器中 1. 数据搬移指令 mov  , mvn 1)  指令格式:<opcode><cond>{s}   Rd,  operand     <操作 ...