本地git关联远程github
0. 前言
我们开发的项目,均在本地开发;为了保证项目进度的一致性和公开性等,我们通常将开发过程代码或成品放置到github中,本文就讲述如何使得本地git与远程github同步!
PS:以下两个名称解释:
远程端:指github端
本地端:指本地git
1.操作步骤
本文以Linux为主线进行讲解,windows端基本相同
1). 本地端:
①. 下载git 并导入值你的 VM-Linux中

②. 也可直接在vm-linux下yum安装
命令:
yum install git -y

③. 在某目录下初始化本地git仓库
命令:
git init
当目录下出现.git的子目录后,表示init成功

④. 配置git
执行完上述步骤,一定要对git进行配置,主要是配置用户名和邮箱地址
git config --global user.name "your-name
git config --global user.email your-name@example.com配置完成后,可使用
git config --global --list查看是否配置成功

⑤. 至此,本地端配置基本完成
2). github 配置
①. 登录到github
github地址:https://github.com/
②. 创建github仓库

③. 添加SSH-key到github
本地git与github的通信采用加密机制,因此远程端需要获取本地端的公钥。
小知识:
- 公钥与私钥:私钥加密的文件必须公钥来解密,反之亦然;
- 发信人用自己的私钥加密后,发送给接收方,接收方采用发送方实现给定的公钥进行数据解密;
- 接收方通过发送方的公钥对数据进行加密后返回给发送端,发送端只能用自己的私钥解密;
- 任何需要获取发送方数据的机构,均必须取得发送方的公钥
1. 本地端创建SSH-key
- 首先查看本地端有没有SSH-key
ll -a ~/.ssh/
- 如果没有文件,则执行如下命令:
ssh-keygen -t rsa -C "your-email"

- 此时再去查看,发现多了两个文件,其中
rsa.pub就是我们需要的公钥文件。

- 复制该文件的所有内容
2. 将key加到githb


- 添加完成后,可以查看到

3. 测试key是否添加成功
ssh -T git@github.com
- 出现:
You've successfully authenticated, but GitHub does not provide shell access.,表示添加成功

3). 本地端与远程端的操作
①. 从远程端拷贝文件/源码
git支持http和ssh两种拷贝类型,但是ssh速度更快,因此建议使用ssh。
git clone git@github.com:your-name/xx.git


②. 将本地端与github关联
命令:
git remote add 主机名 远端仓库名(ssh的形式)
如下代码:
# git remote add alg git@github.com:Jimmy-Nie/Algorithm.git
- 主机名:给远程主机命名,名字可任意,但是一般采用origin,若已经被本机其它仓库使用,则会报错
- 仓库地址:如上图标注
④. 将本地内容推送到远程端
git push -u alg master
-u: 推送内容并关联分支(第一次推送时用,其后为可选)al: 刚才创建的远程主机名master: 本地的master分支(如推送其它分支,可直接替换为分支名)
推送完成后,可看到远程端与本地端内容一模一样了!



下次再推送时候,可只用用:
git push alg master
将内容推送到远程端
⑤. 取回远程端某个分支的更新
git pull alg master
本地git关联远程github的更多相关文章
- 本地git连接远程github
git要连接GitHub仓库,是通过SSH加密连接的,所以必须要创建SSH key ssh-key -t rsa -C "youremail@example.com" 这里邮箱必须 ...
- Git关联远程GitHub仓库
一.本地安装GIT版本控制软件 二.配置Git,设置用户信息 git config --global user.name "jack" git config --global us ...
- GitHub学习二-将本地Git库与Github上的Git库相关联
0 git clone 如果是从自己的github clone,一键搞定,和三步的git remote add功能一样. 1.创建本地库 新建目录,右键git bash here,输入 git ini ...
- git远程分支创建,本地分支关联远程分支,第一次发布、更新分支
git远程分支创建,本地分支关联远程分支,第一次发布.更新分支 github托管服务器地址为https://github.com git提交更新代码示意图: 本地与远程进行免密码配置(本地与远程关联) ...
- 将本地文件git到远程github仓库
使用git管理项目是开发人员必备的技能,下面就介绍如何使用git将本地文件管理并且同步到github上面. 小白可以参考 创建SSH-key并且在github中添加认证 在本地用户的.ssh文件下面生 ...
- Git本地仓库与远程github同步的时候提示fatal: remote origin already exists 错误解决办法
Git本地仓库与远程github同步的时候提示fatal: remote origin already exists 错误解决办法 1.git在本地的电脑创建了仓库,要远程同步github的仓库.使用 ...
- git连接远程GitHub仓库详细总结 for HTTPS协议
简单唠叨几句哈.之前工作的时候,由于是在大厂,代码提交.版本管理都是多人协作的,所以公司当时用的git + gerrit来实现代码管理的.当时入职时并不懂git的使用,虽然有大神写好配置git的文档, ...
- 删除本地git的远程分支和远程删除git服务器的分支【转】
转- 删除本地git的远程分支和远程删除git服务器的分支 在项目中使用git管理代码后,有些时候会创建很多不同名称的分支,以此区分各个分支代码功能. 而随着代码的合并,以前的分支就可能不再需要保存了 ...
- 本地Git仓库和Github仓库的关联
1.我们首先创建一个文件夹(用于保存本地仓) 在我们想要创建的路径下右键鼠标打开Git Bash Here(创建一个文件夹,并进入文件夹) 2.通过命令git init把我们刚才创建的文件夹变成Git ...
随机推荐
- Nodejs书写爬虫工具
看了几天的nodejs,的确是好用,全当是练手了,就写了一个爬虫工具. 爬虫思路都是一致的,先抓取页面数据,然后分析页面,获取到所需要的数据,最后获得这些数据,是写入到硬盘,还是显示到网页,自己看着办 ...
- Android实现带下划线的EditText(BUG修正)
之前写了一个关于实现EditText显示下划线的例子,发现仍然存在一些问题,在此继续探索,原文链接:http://www.cnblogs.com/ayqy/p/3599414.html (零)另一个b ...
- [JS] Ajax请求会话过期处理
对于页面来说,处理session过期比较简单,一般只需在过滤器里面判断session用户是否存在,不存在则跳转页面到登陆页即可. 对于Ajax请求来说,这个办法则无效,只能获取到登录页的html代码. ...
- (php)实现万年历
<?php //修改页面编码 header("content-type:text/html;charset=utf-8"); //获取当前年 $year=$_GET['y'] ...
- foreach写失效的问题
本文由作者张远道授权网易云社区发布. 坦白讲身为程序员,bug在所难免.有人讲,bug越多,说明程序员越伟大.这句话有它一定的道理. 因为从某方面讲,bug多了说明他的代码量也多. 言归正传,这里我记 ...
- Day44 数据库的操作
视图操作: 1.左连接查询 select * from person left join dept on person.dept_id = dept.did 2. 右连接 3. 内连接 inner ...
- python salt 实现windows账户自动化
import random import string import json import logging import time import os import sys def usage(): ...
- django 使用celery 实现异步任务
celery 情景:用户发起request,并等待response返回.在本些views中,可能需要执行一段耗时的程序,那么用户就会等待很长时间,造成不好的用户体验,比如发送邮件.手机验证码等. 使用 ...
- webpack 4 入坑及爬坑记录
一.安装 在本机安装好nodejs的基础上,window操作系统,cmd打开控制台,添加到创建的文件夹下 npm init //初始化npm npm install webpack --save-de ...
- [Swift实际操作]七、常见概念-(7)日历Calendar和日期组件DateComponents
本文将为你演示日历和日期组件的使用.通过日历的日期部件,可以获得日期的各个部分. 首先引入需要用到的界面工具框架 import UIKit 初始化一个日期对象,其值为当前的日期. let dt = D ...