git 如何关联多个库
git 如何关联多个库
在本地同一个库进行操作多个库,可以把代码推送到不同的库中,可以拉取某个库指定的代码,这样更加灵活使用
git remote
- 查看远程主机名
git remote -v
// λ git remote -v
// gitlab git@github:b.git (fetch)
// gitlab git@github:b.git (push)
// origin git@gitee.com:a.git (fetch)
// origin git@gitee.com:a.git (push)
- 拉取远程主机名,同时修改名
克隆版本库的时候,所使用的远程主机自动被Git命名为origin。如果想用其他的主机名,需要用git clone命令的-o选项指定。
git clone -o element-ui https://*******
git remote // element-ui
- 显示主机名下的详细信息
git remote show element-ui
- 添加主机名
git remote add <主机名> <网址>
- 删除远程主机
git remote rm <主机名>
- 远程主机改名
git remote rename <原主机名> <新主机名>
git fetch
一旦远程主机的版本库有了更新(Git术语叫做commit),需要将这些更新取回本地,这时就要用到git fetch命令。
- git fetch
git fetch <远程主机名>
/** fetch 意义 **/
git fetch命令通常用来查看其他人的进程,因为它取回的代码对你本地的开发代码没有影响。
- 查看主机的分支
git fetch <主机名> <分支名>
- 查看远程分支
git brach -r
- 查看所有分支 (本地和远程)
git branch -a
- 查看本地分支
git branch
git pull
git pull命令的作用是,取回远程主机某个分支的更新,再与本地的指定分支合并
git pull <远程主机名> <远程分支名>:<本地分支名>
/** eg **/
git pull origin next
==== 等同于 ====
git fetch origin
git merge origin/next
git push
git push命令用于将本地分支的更新,推送到远程主机。它的格式与git pull命令相仿。
git push <远程主机名> <本地分支名>:<远程分支名>
- 如果当前分支与多个主机存在追踪关系,则可以使用-u选项指定一个默认主机,这样后面就可以不加任何参数使用git push。
git push -u origin master
// 下次就可以 直接使用 git push
不带任何参数的git push,默认只推送当前分支,这叫做simple方式。此外,还有一种matching方式,会推送所有有对应的远程分支的本地分支。Git 2.0版本之前,默认采用matching方法,现在改为默认采用simple方式。如果要修改这个设置,可以采用git config命令。
git config --global push.default matching
git config --global push.default sinmple
/** 本地分支都推送到远程主机 **/
git push --all origin
了解上述命令后,可以开启推送库了
假设两个库,一个库有内容,一个库没内容
// 库A
/** 库A有内容 **/
mayun
// 库B
/** 新建 **/
github
// 本地库
首先本地添加库
/** eg **/
git remote add mayun git@gitee.com:a.git
git remote add github git@github.com:b.git
检查库
git remote -v
github github git@github.com:b.git (fetch)
github github git@github.com:b.git (push)
mayun git@gitee.com:a.git (fetch)
mayun git@gitee.com:a.git (push)
拉取库A内容到本地
git pull mayun
/** 有可能需要指定具体分支 **/
git pull mayun master
推送到库B
git push github // 推送的只是当前分支
/** 若是多个分支 **/
git push github --all
若是下次拉代码时,可以指定库
探讨
- 推送时,无法同时推送两个库,需要一个个推,但是这样可以拉取自己想要库的内容
之前操作是可以同时推送多个库,但是却无法拉取某个库的内容,在想是否可以将两者进行结合呢,那这样是否就可以按需进行操作了
git push all
修改**.git**里的 *config* 配置即可
原理是,同时将两个库名名为同一个名字
/ ** eg **/
origin git@github.com:b.git
origin git@gitee.com:a.git
git push -u origin // -u 默认第一次进行本地远程关联
git push origin // 之后的命令
总结
- 内容很多是参考阮老师的,以及自己尝试和网友的各种办法
- 最起码加深了我对git的进一步了解了
git 如何关联多个库的更多相关文章
- Git -- git中本地与远程库的关联与取消
1.在本地目录下关联远程repository : git remote add origin git@github.com:git_username/repository_name.git 2.取消本 ...
- git 在局域网新建远程库及本地开发常用命令
git 版本直接在官网下载即可:https://git-scm.com/downloads 安装后有git bash与git gui可以用. 1.在远程服务器上新建裸仓库 git init --ba ...
- git学习3 - 克隆远程库到本地 将本地库上传到git
如何克隆远程版本库到本地 git clone URL 如何用命令将本地项目上传到git 1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库 (注意: cd C:/U ...
- git找不到远程库问题
git报错:Couldn't find remote ref XXXX (gitlab报错)XXXX does not appear to be a git repository Could not ...
- git学习笔记 ---添加远程库
现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举 ...
- Git添加和克隆远程库
首先我们得有一个GitHub账号,然后把当前电脑的SSH Key添加到GitHub上面 第1步:创建SSH Key.在用户主目录下(可用 “cd ~”进入用户主目录),看看有没有.ssh目录,如果有, ...
- mzy git学习,git推送到远程库(八)
git在同步到远程库 关于git中多个用户切换的事情: 完全使用账户密码策略连接远程库: 之前一直尝试在本地切换多个用户,发现一直不行,很奇怪?后面发现必须要去win10的凭据管理器删除当前git的凭 ...
- git学习2:版本库
创建版本库 版本库,又称仓库,英文名为repository,版本库内的所有文件都可以被Git管理起来,即每个文件的修改.删除,Git都能跟踪. 1,在目录中创建版本库 在目录中有两种创建版本库的方法, ...
- git无法clone远程代码库及git代理设置
git作为一个版本管理神器,日常工作中自然也就少不了了:特别是Android开发,github和google是逃不过的了.然而很多时候需要用到git克隆远程的代码库,众所周知的原因google.and ...
随机推荐
- HDU4135Co-prime(容斥原理)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4135 题目解析: 给你一个闭区间[A,B](1 <= A <= B <= 1015) ...
- VS2010/MFC编程入门之三十(常用控件:树形控件Tree Control 上)
前面两节为大家讲了列表视图控件List Control,这一节开始介绍一种特殊的列表--树形控件Tree Control. 树形控件简介 树形控件在Windows系统中是很常见的,例如资源管理器左侧的 ...
- Redis快速入门之简介
一.Redis是什么? Redis 是一个开源(BSD许可)基于内存数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如字符串(strings), 散列(hashes) ...
- EditPlus 4.3.2463 中文版已经发布(10月16日更新)
距离上个版本在本年5月发布后,EditPlus 网站沉寂多月.日前终于发布了一个新的小版本. 该版本却具有多项改进,值得一提: * Ctrl+Alt+Up/Down 键在列选模式下可插入多个插入点. ...
- ng-深度学习-课程笔记-6: 建立你的机器学习应用(Week1)
1 训练/验证/测试集( Train/Dev/test sets ) 构建神经网络的时候有些参数需要选择,比如层数,单元数,学习率,激活函数.这些参数可以通过在验证集上的表现好坏来进行选择. 前几年机 ...
- Python的星号(*)和双星号(**)用法
①引言 在Python中,星号除了用于乘法数值运算和幂运算外,还有一种特殊的用法是在变量前加单个星号或两个星号,实现多参数的传人或变量的拆解. ②什么是星号变量 最初,星号变量是用在函数的参数传递上的 ...
- poj1985 / poj2631(树的直径)
poj1985 Cow Marathon 树的直径裸题 树的直径的一般求法: 任意一点为起点,dfs/bfs找出与它最远的点$u$ 以$u$为起点,dfs/bfs找出与它最远的点$v$ 则$d(u,v ...
- 20145336张子扬 《网络对抗》逆向及bof基础
20145336张子扬 <网络对抗>逆向及bof基础 学习知识点 缓冲区溢出 缓冲区溢出 一种非常普遍.非常危险的漏洞,在各种操作系统.应用软件中广泛存在.利用缓冲区溢出攻击,可以导致程序 ...
- 20145221 《Java程序设计》第八周学习总结
20145221 <Java程序设计>第八周学习总结 教材学习内容总结 第十五章部分 - 通用API 通用API 日志: 日志对信息安全意义重大,审计.取证.入侵检测等都会用到日志信息 日 ...
- ZLYD团队第5周项目总结
ZLYD团队第5周项目总结 项目进展 目前游戏人没有成功运行.初步判断是部分代码有误. 我们采用了两种运行方式,代码未出现明确错误.但问题可能是由于版本问题. 将Wall.java.Gold.java ...