Git(4):远程仓库
添加\连接远程库
目前我们使用到的 Git 命令都是在本地执行,如果你想通过 Git 分享你的代码或者与其他开发人员合作。 你就需要将数据放到一台其他开发人员能够连接的服务器上。
远程仓库可以是Github(可以在官网https://github.com/注册),也可以是自己搭建的Git服务器。
(1) 用邮箱号注册GitHub账号。(注册后我会创建一个GitTest的Repository)
由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以使用以下命令生成SSH Key。
$ssh-keygen -t rsa -C "youremail@example.com"
可以在<C:\Users\admin\.ssh>里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
(2) 登陆GitHub,点击头像旁的下拉列表,选择“Settings >> SSH and GPG Keys”页面,在Key文本框里粘贴id_rsa.pub文件的内容。
(3) 为了验证是否成功,输入以下命令
$ssh -T git@github.com
(4) 如果没有本地Git目录,则需要自己本地先初始化,再推送到远程仓库。("远程仓库"标志就是origin,这是Git默认的叫法,一看origin这个名字一看就知道是远程库)
admin MINGW64 /c/GitRepositoryTest/GitTest
$echo "GitTest line1" >> README.md
$git init
$git add README.md
$git commit -m "Add README.md"
$git remote add origin git@github.com:lyz170/GitTest.git #添加远程仓库
$git push -u origin master #push到远程仓库的master分支
如果有本地Git目录,直接推送到远程仓库即可。
$git remote add origin git@github.com:lyz170/GitTest.git
$git push -u origin master
操作远程仓库的命令
查看当前的远程库([-v]: 可以看到每个别名的实际链接地址)
$git remote [-v]
添加远程仓库
$git remote add [repository name] [SSH/HTTPS url]
推送到远程仓库
$git push [repository name] [branch name]
删除远程仓库
$git remote rm [repository name]
关于<git fetch>和<git pull>的区别
一旦远程主机的版本库有了更新(Git术语叫做commit),需要将这些更新取回本地,这时就要用到git fetch
命令。
git fetch
命令通常用来查看其他人的进程,因为它取回的代码对你本地的开发代码没有影响(该命令并不会覆盖当前本地分支)。所取回的更新,在本地主机上要用[repository name/branch name]的形式读取。比如origin
主机的master
,就要用origin/master
读取。(注意区分命令里的origin master)
git fetch 有四种基本用法
$git fetch #更新git remote中所有的远程repository所包含branch的最新commit-id, 将其记录到.git/FETCH_HEAD文件中
$git fetch [repository name] #更新名称为[repository name]的远程repository上的所有branch的最新commit-id,将其记录
$git fetch [repository name] [branch name] #更新名称为[repository name]的repository上的[branch name]分支
$git fetch [repository name] [branch name]:[local branch name] #(3)完成后,再在本地创建[local branch name]本地分支保存远端分支的所有数据。
取回远程主机的更新以后,可以在它的基础上,使用git checkout
命令创建一个新的分支。相当于上面的第4条命令。
$git checkout -b newBrach origin/master
也可以使用git merge
命令在当前本地分支上合并远程分支
$git merge origin/master
git pull
命令的作用是,取回远程主机某个分支的更新,再与本地的指定/当前分支合并。
$git pull [repository name] [branch name]:[local branch name]
如果远程分支是与当前分支合并,则冒号后面的部分可以省略
$git pull [repository name] [branch name]
[总结]
Git(4):远程仓库的更多相关文章
- git 切换远程仓库,以及碰到的一个问题。
git 切换远程仓库出现如下问题: $ git checkout -b localdev origin/dev fatal: Cannot update paths and switch to bra ...
- Git从远程仓库里拉取一条本地不存在的分支方法
Git从远程仓库里拉取一条本地不存在的分支方法 从远程仓库里拉取一条本地不存在的分支时,进入到对应目录先执行git fetch然后再执行git checkout -b 本地分支名 origin/远程分 ...
- git学习——远程仓库操作
查看当前的远程库——git remote 列出了仅仅是远程库的简单名字 可以加上-v 现实对应的克隆地址 添加远程仓库——git remote add [shortname] [url] git re ...
- git从远程仓库中更新代码到本地仓库
git从远程仓库中更新代码到本地仓库 有时候在使用git pull的时候,会莫名才报错.查了很多资料,尝试过git的很多命令.包括git fetch命令,都会报同样的错.最后终于发现了一条捷径,由网友 ...
- [转]git修改远程仓库地址
原文链接:http://www.cnblogs.com/lazb/articles/5597878.html 问:Coding远程仓库地址变了,本地git仓库地址如何更新为最新地址 git修改远程仓库 ...
- 为git创建远程仓库
首先生成ssh公钥: 将公钥添加到git: 测试秘钥是否通过: 然后就可以到web界面看到标注的地方被绿了: 但是我的没有绿,不知道为啥,难道没有女朋友的原因吗? rm -rf .ssh 重来好几遍都 ...
- git从远程仓库拉取内容或向远程仓库上传内容
一.将本地文件上传到远程仓库步骤 git init git add . git commit -m "初始框架" git remote add origin https://git ...
- Git 克隆远程仓库到本地
Git 克隆远程仓库到本地 参考 $ git clone --help https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E8%8E%B7% ...
- git清空远程仓库
需求背景:因为用jenkins连接了git仓库,有时候job构建出现问题,需要排查问题,但是呢,真实的项目代码量非常pang大,所以就需要建1个测试仓库,使用最少量的代码能复现自己的问题就好. 这就需 ...
- git clone远程仓库的指定分支
正常clone方式 git clone <远程仓库地址> 默认clone的是远程仓库的master分支 clone指定分支 git clone -b <分支名> <远程仓 ...
随机推荐
- idea 设置Terminal为git终端
- ubuntu卸载/更新Cmake
CMake安装或CMake Error at CMakeLists 发生情景: 使用cmake命令安装软件时,报如下错误: CMake Error at CMakeLists.txt:4 (CMAKE ...
- iOS native plugin 的代码sample
https://bitbucket.org/Unity-Technologies/iosnativecodesamples/src/stable/ 不在这个stable版本 在2017 dev这个版本
- ao的mobile解决方案
http://aicdg.com/ue4-msaa-depth/ http://aicdg.com/vulkan-mass-shader-resolve/ ao两篇paper 分bake和realti ...
- lumen 队列处理
数据库要使用 database 队列驱动,你需要数据表保存任务信息(比如失败任务).要生成创建这些表的迁移,可以在项目目录下运行 Artisan 命令 queue:table,迁移被创建之后,可以使用 ...
- 适配器模式(Adapter)---结构型
1 基础知识 定义:将一个类的接口(被适配者)转换成客户期望的另一个接口(目标).特征:使原本接口不兼容的类可以一起工作. 本质:转换匹配,复用功能.把不兼容的接口转换为客户端期望的样子从而实现功能的 ...
- BZOJ 1116 [POI2008]CLO-Toll 并查集
如果一个连通块是一个树的形态,则不合法,否则合法. 用并查集判断一下即可. #include <bits/stdc++.h> #define N 100005 #define M 2000 ...
- (九)文档和视图,Invalidate,数据库编程
一.文档视图结构 文档类(CDocument):存储加载(读写)数据视图类(CView):显示和修改数据 1)单文档 a)文档模板:把框架窗口.文档.视图关联在一起b)文档类(CDocument): ...
- [Cogs] 最大数maxnumber
http://cogs.pro:8080/cogs/problem/problem.php?pid=1844 Luogu 的数据真zhizhang Cogs AC #include <iostr ...
- Web安全(白帽子讲)之第二篇
第二章:浏览器安全 2.1.同源策略 是一种约定,它是浏览器最核心也是最基本的安全功能. web是构建在同源策略的基础之上,浏览器只是针对同源策略的一种实现 影响“源” 的因素有:host(域名或IP ...