前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >本地git链接到github

本地git链接到github

作者头像
ConardLi
发布于 2019-09-08 06:45:45
发布于 2019-09-08 06:45:45
58100
代码可运行
举报
文章被收录于专栏:code秘密花园code秘密花园
运行总次数:0
代码可运行

本地git服务器与github建立链接

Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上。怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以“克隆”这个原始版本库,而且每台机器的版本库其实都是一样的,并没有主次之分。

我们使用GitHub完全可以代替这个中心仓库,这个网站就是提供Git仓库托管服务的,所以,只要注册一个GitHub账号,就可以免费获得Git远程仓库。

由于你的本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以,需要一点设置:

第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 ssh-keygen -t rsa -C "youremail@example.com"

你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。

如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:

然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:

为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。

当然,GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。

推送本地代码到github

你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举多得。

首先,登陆GitHub,然后,在右上角找到“Create a new project”按钮,创建一个新的仓库:

在Repository name填入learngit,其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库:

目前,在GitHub上的这个learngit仓库还是空的,GitHub告诉我们,可以从这个仓库克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。

现在,我们根据GitHub的提示,在本地的learngit仓库下运行命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git remote add origin git@github.com:michaelliao/learngit.git

注意 git remote add origin后面的部分是你在上图看到的你自己的链接,每个人的都不相同。

如果你没有修改,你在本地关联的就是我的远程库,关联没有问题,但是你以后推送是推不上去的,因为你的SSH Key公钥不在我的账户列表中。

添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。

下一步,就可以把本地库的所有内容推送到远程库上:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git push -u origin master

由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

推送成功后,可以立刻在GitHub页面中看到远程库的内容已经和本地一模一样:

从现在起,只要本地作了提交,就可以通过命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git push origin master

从远程库克隆

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git clone git@github.com:michaelliao/gitskills.git

注意把Git库的地址换成你自己的,然后进入gitskills目录看看,已经有README.md文件了。

如果有多个人协作开发,那么每个人各自从远程克隆一份就可以了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-10-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 code秘密花园 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Git使用
    yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
yaohong
2019/09/11
5180
Git使用
git/github使用完整教程(1)基础
像上面的命令,有很多Linux会友好地告诉你Git没有安装,还会告诉你如何安装Git。
全栈程序员站长
2022/08/20
2720
git/github使用完整教程(1)基础
Git 学习笔记
根据廖雪峰老师的Git学习教程整理的笔记,在此再次感谢廖老师和像廖老师那样无私奉献的前辈! 1 安装Git ---- 2 创建版本库 ---- 2.1.1 通过git init命令建好仓库 $ git init Initialized empty Git repository in /Users/michael/learngit/.git/ ps: pwd命令用于显示当前目录,这样就在当前的目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了
傅_hc
2018/07/04
4560
git 学习笔记 原
网站链接:https://www.liaoxuefeng.com/,现记录下学习笔记
tianyawhl
2019/04/04
5040
git 学习笔记
                                                                            原
史上最全​Git使用手册
Git使用手册 目录: Git是什么 基本概念 Git的诞生 Git的安装与配置 创建版本库 Git操作略览 远程仓库:git的杀招 分支管理 便签管理 使用github 自定义Git Git是什么 Git是目前世界上最先进的分布式版本控制系统(没有之一)。 对于文件操作,长期使用电脑办公的人想必深有体会。对于学生而言,当我们对报告、论文、工作进展等等一改再改、一版再版时,我们需要这样一个工具来帮我们记录我们对文件执行过的增删修改操作,甚至可以对版本进行回滚。这个时候, git就派上大用场啦。 基本概念 版
生信技能树
2018/03/08
2.3K0
史上最全​Git使用手册
Git上手实用一文通
2.进入demo目录下:git init命令将这个目录变成git可以管理的仓库(repository)。将仓库建好后,仓库目录下会多了一个.git隐藏文件夹。可以用ls -ah查看隐藏文件。
用户7353950
2022/06/23
4140
Git上手实用一文通
Windows下git安装使用教程
git status 此命令可以让我们时刻掌握仓库当前的状态,上面的命令告诉我们,readme.txt被修改过了,但还没有准备提交的修改。
李智
2018/08/03
8K0
Git(二)Git几个区的关系与Git和GitHub的关联
前言   前面只是大概的介绍了一点基础的东西,接下来会更加深入的去了解一下Git。 一、Git的工作区、暂存区和版本库之间的区别和联系   1)工作区     在PC中能看得到的创建的一个管理仓库的目
用户1195962
2018/01/18
1K0
Git(二)Git几个区的关系与Git和GitHub的关联
GitHub使用操作指南
GitHub的是版本控制和协作代码托管平台。它可以让你和其他人的项目从任何地方合作。Git也是目前世界上最先进的分布式版本控制系统(没有之一)。最初编写用作Linux内核代码的管理。推出后,Git在其它项目中也取得了很大成功。Github目前已经有100多万的开发者,并且对于公共项目的托管免费。Github使得版本控制更加容易,多人协作编码变得简单。使用过SVN的同学应该知道,当没有网络的支持,开发者并没有办法提交已完成代码。Github支持离线提交,其实就是提交到本地仓库。每一个开发者clone下的项目代码都是一个完整的仓储,当远程或其他协作开发者代码无法恢复时,都可以方便使用本地的仓储进行恢复。当需要对代码进行分支时,其他版本控制软件在大量文件时会很慢,而Github几乎是瞬间完成这个操作,而且只需要一个命令即可。下面我们一步一步来搭建Github的环境(以windows操作系统为例)。
知忆
2021/06/09
7990
【读书笔记】廖雪峰:Git教程
本文是辉哥学习廖雪峰的《Git教程》的读书笔记,把其中一些精要的命令记录了下来。这个笔记主要给辉哥自己做备忘索引,对一般人来说很难有明了的价值。建议直接点击学习廖雪峰的文章《Git教程》。
辉哥
2019/04/21
1.5K0
如何创建Git本地仓库与服务器端仓库的关系
HTML5学堂-利利:关于Git的知识,我们共分成了四个大步骤进行讲解,之前我们提到了Git的安装与配置、Git在本地的使用方法,今天我们要讲解的就是如何创建Git本地仓库与服务器端仓库的关系。 今日
HTML5学堂
2018/03/13
2.3K0
如何创建Git本地仓库与服务器端仓库的关系
Git之添加远程库
现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举
兮动人
2021/06/11
4800
Git之添加远程库
git命令大全(非常齐全)[通俗易懂]
大家好,又见面了,我是你们的朋友全栈君。 git init // 初始化一个Git仓库 git status // 查看仓库的状态 git add . // 将所有修改添加到暂存区 git add * // Ant风格添加修改 git add *Controller // 将以Controller结尾的文件的所有修改添加到暂存区 git add Hello* // 将所有以Hello开头的文件的修改添加到暂存区 例如:HelloWorld.txt,Hello.java,Hell
全栈程序员站长
2022/09/14
1.7K0
学习Git(二)基本操作
Git 基础操作 1. 创建版本库 什么是版本库呢?版本库又名仓库,英文名 repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被 Git 管理起来,每个文件的修改、删除,Git 都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。 所以,创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录: $ mkdir learngit $ cd learngit $ pwd /Users/learngit pwd命令用于显示当前目录。 如果你使用 Window
小歪
2018/04/04
9100
学习Git(二)基本操作
Git学习总结2
13.远程仓库 将本地Git 与Github来链接起来,传输通过ssh加密。 (1)创建SSH Key 打开本地Git Bash ssh-keygen -t rsa -C “自己的邮件地址” 会在在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件, 这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。 (2)登陆GitHub ,打开”Acount settings”,点击”SSH and GPG keys”, 然后 “new SSH key”,Title 随便填,Key 填写id_rsa.pub的内容。 (3)添加远程库 要关联一个远程库,使用命令git remote add origin git@github.com:VIPlkp/learngit.git 关联后,使用命令git push -u origin master第一次推送master分支的所有内容; 此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改. 分布式版本系统的最大好处之一是在本地工作完全不需要考虑远程库的存在, 也就是有没有联网都可以正常工作,而SVN在没有联网的时候是拒绝干活的; 当有网络的时候,再把本地提交推送一下就完成了同步,真是太方便了! (4)从远程库克隆 首先,登陆GitHub,创建一个新的仓库,名字叫gitskills 创建后会有一个REANME.md 现在,远程库已经准备好了,下一步是用命令git clone克隆一个本地库: git clone git@github.com:VIPlkp/gitskills.git
曼路
2018/10/18
3380
Git之远程仓库的使用
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了。 可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Git有什么特别的地方。 没错,如果只是在一个仓库里管理文件历史,Git和SVN真没啥区别。 为了保证你现在所学的Git物超所值,将来绝对不会后悔,同时为了打击已经不幸学了SVN的童鞋,本章开始介绍Git的杀手级功能之一(注意是之一,也就是后面还有之二,之三……):远程仓库。 Git是分布式版本
兮动人
2021/06/11
4420
Git之远程仓库的使用
分布式版本控制-Git(一)
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
奋飛
2019/08/15
4300
Git学习笔记
此篇笔记是学习参考廖雪峰老师的Git教程,附上学习网址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b806
闪电gogogo
2018/01/08
8870
Git学习笔记
github学习(二)
Git学习(一) 学习github一定要学会git,否则在后续的github运用中会出现很多问题。 1.安装Git: Mac自带Git,Windows需要自己安装。 2.配置git: 配置user.name和user.email: 打开终端输入: git config --global user.name "Your Name" git config --global user.email "email@example.com" 注意git config命令的--global参数,表示全局配置,使用后你的电
希希里之海
2018/04/26
6480
初识git
安装 Ubuntu linux安装git:sudo apt-get install git 查看git版本:git --version
用户10325771
2023/03/01
2010
相关推荐
Git使用
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档