【Git】使用Git连接远程仓库GitHub

  • 1. 添加远程仓库
    • 1.1 在github上创建仓库
    • 1.2 SSH协议
    • 1.3 同步到远程仓库
      • 1.3.1 使用git bash
      • 1.3.2 使用TortoiseGit同步
  • 2. 从远程仓库克隆
  • 3. 从远程仓库取代码
  • 4. 搭建私有Git服务器
    • 4.1 服务器搭建
    • 4.2 连接服务器

1. 添加远程仓库

常用的远程仓库就是github

1.1 在github上创建仓库

首先你得在github上创建一个账号。然后在github上创建一个仓库:


点击“create repository”按钮仓库就创建成功了。
Github支持两种同步方式“https”和“ssh”。如果使用https很简单基本不需要配置就可以使用,但是每次提交代码和下载代码时都需要输入用户名和密码。如果使用ssh方式就需要客户端先生成一个密钥对,即一个公钥一个私钥。然后还需要把公钥放到githib的服务器上。这两种方式在实际开发中都用应用,所以我们都需要掌握。接下来我们先看ssh方式。

1.2 SSH协议

SSH 为 Secure Shell(安全外壳协议)的缩写,由 IETF 的网络小组(Network Working Group)所制定。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

  • 基于密匙的安全验证
    使用ssh协议通信时,推荐使用基于密钥的验证方式。你必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上。如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用你的密匙进行安全验证。服务器收到请求之后,先在该服务器上你的主目录下寻找你的公用密匙,然后把它和你发送过来的公用密匙进行比较。如果两个密匙一致,服务器就用公用密匙加密“质询”(challenge)并把它发送给客户端软件。客户端软件收到“质询”之后就可以用你的私人密匙解密再把它发送给服务器。

  • ssh密钥生成
    在windows下我们可以使用 Git Bash.exe来生成密钥,可以通过开始菜单或者右键菜单打开Git Bash

    git bash 执行命令,生命公钥和私钥
    命令: ssh-keygen -t rsa

    执行命令完成后,在window本地用户.ssh目录C:\Users\用户名.ssh下面生成如下名称的公钥和私钥:

  • ssh密钥配置
    密钥生成后需要在github上配置密钥本地才可以顺利访问。


    在key部分将id_rsa.pub文件内容添加进去,然后点击“Add SSH key”按钮完成配置。

1.3 同步到远程仓库

同步到远程仓库可以使用git bash也可以使用tortoiseGit

1.3.1 使用git bash

在仓库所在的目录(D:\temp\git\repository)点击右键选择“Git Bash Here”,启动git bash程序。

然后在git bash中执行如下语句:

git remote add origin git@github.com:siyiyimiaozhong/mytest.git
git push -u origin master

注意:siyiyimiaozhong是对应自己的个人用户名。


1.3.2 使用TortoiseGit同步

由于TortoiseGit使用的ssh工具是“PuTTY”git Bash使用的ssh工具是“openSSH”,如果想让TortoiseGit也使用刚才生成的密钥可以做如下配置:


Url:远程仓库的地址
推送URL:也是相同的
Putty密钥:选择刚才生成的密钥中的私钥

在本地仓库的文件夹中单击右键,选择“Git同步”

2. 从远程仓库克隆

  • 使用git bash:
git clone git@github.com:siyiyimiaozhong/mytest.git
  • 使用TortoiseGit:
    在任意目录点击右键:


3. 从远程仓库取代码

Git中从远程的分支获取最新的版本到本地有这样2个命令:

  1. git fetch:相当于是从远程获取最新版本到本地,不会自动merge(合并代码)
  2. git pull:相当于是从远程获取最新版本并merge到本地
    上述命令其实相当于git fetch 和 git merge

在实际使用中,git fetch更安全一些
因为在merge前,我们可以查看更新情况,然后再决定是否合并
如果使用TortoiseGit的话可以从右键菜单中点击“拉取”(pull)或者“获取”(fetch)

4. 搭建私有Git服务器

4.1 服务器搭建

远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改。GitHub就是一个免费托管开源代码的远程仓库。但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用。

搭建Git服务器需要准备一台运行Linux的机器,在此我们使用CentOS。以下为安装步骤:
1、安装git服务环境准备

yum -y install curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel gcc cc

2、下载git-2.5.0.tar.gz

  1. 解压缩
  2. cd git-2.5.0
  3. autoconf
  4. ./configure
  5. make
  6. make install

3、添加用户

adduser -r -c 'git version control' -d /home/git -m git

此命令执行后会创建/home/git目录作为git用户的主目录。

5、设置密码

passwd git
输入两次密码

6、切换到git用户

su git

7、创建git仓库

git --bare init /home/git/first

注意:如果不使用“–bare”参数,初始化仓库后,提交master分支时报错。这是由于git默认拒绝了push操作,需要.git/config添加如下代码:

[receive]denyCurrentBranch = ignore

推荐使用:git --bare init初始化仓库。

4.2 连接服务器

私有git服务器搭建完成后就可以向连接github一样连接使用了,但是我们的git服务器并没有配置密钥登录,所以每次连接时需要输入密码。
使用命令连接:

git remote add origin ssh://git@IP/home/git/first

这种形式和刚才使用的形式好像不一样,前面有ssh://前缀,好吧你也可以这样写:

git remote add origin git@IP:first

使用TortoiseGit同步的话参考上面的使用方法。

【Git】使用Git连接远程仓库GitHub相关推荐

  1. git配置本地用户名和邮箱—连接远程仓库(github)

    git配置本地用户名和邮箱-连接远程仓库(github) 设置或者修改用户名及邮箱 git config --global user.name "***" git config – ...

  2. Git创建、连接远程仓库命令

    目录 Git定义 作用 概念 配置 操作 全局配置 创建 添加到暂存盘 从暂存盘撤回 提交到版本库 从版本库切换版本库 查看记录 分支 标签 下载远程仓库 远程仓库(github) 远程仓库(本地) ...

  3. Git客户端如何连接远程仓库

    前面两篇Git服务器的安装和配置(一)和Git服务器的安装与配置(二)已经搭建和配置好Git远程仓库了! 现在我们就可以向远程仓库拉取和推送我们的代码了! 安装本地git程序,Git下载地址.选择合适 ...

  4. 【第十篇】- Git 远程仓库(Github)之Spring Cloud直播商城 b2b2c电子商务技术总结

    Git 远程仓库(Github) Git 并不像 SVN 那样有个中心服务器. 目前我们使用到的 Git 命令都是在本地执行,如果你想通过 Git 分享你的代码或者与其他开发人员合作. 你就需要将数据 ...

  5. SpringCloud SpringBoot b2b2c 微服务 多商家入驻直播商城之Git 远程仓库(Github)

    Git 远程仓库(Github) 推荐电商源码 Git 并不像 SVN 那样有个中心服务器. 目前我们使用到的 Git 命令都是在本地执行,如果你想通过 Git 分享你的代码或者与其他开发人员合作. ...

  6. git连接远程仓库以及常用命令

    git连接远程仓库以及常用命令 git 连接远程仓库 git ssh key配置 本地配置 git配置 git连接远程仓库 关联远程仓库(将本地仓库推送到新的远程仓库) git常用命令(包括clone ...

  7. git 连接远程仓库并推送代码

    git 初始化 在所需推送的文件夹/父文件夹(后面将会解释两者的不同)下打开 git Bash,并输入下面命令进行初始化: git init git 设置连接远程仓库 在 github 上找到你需要连 ...

  8. 【Git】连接远程仓库

    如何使用Git 连接远程仓库呢?远程仓库->一般指的是代码托管平台.那就先来瞅瞅三个较熟悉的版本(代码)托管服务平台.. 版本(代码)托管服务平台: 码云(gitee.com):是开源中国社区团 ...

  9. Git系列(二)、Git连接远程仓库(Gitee码云)

    Git连接远程仓库 一.什么是Git远程仓库? 二.创建远程仓库 第一步:新建仓库 第二步:创建SSH公钥 第三步:查看公钥 第四步:登录码云Gitee,打开当前仓库设置,添加SSH公钥 第五步:从本 ...

最新文章

  1. arch linux安装_如何从头开始安装Arch Linux
  2. Error in eval(predvars, data, env) : object ‘**‘ not found
  3. c语言:输入两个正整数m和n,求其最大公约数和最小公倍数
  4. 计算神经网络隐藏层节点数极小值
  5. 如何删除SharePoint的循环日历项目
  6. python怎么处理文字_使用python进行简单的文本处理
  7. 第五章 - 图像形态学 - 基于图像金字塔的图像分割(cvPyrSegmentation)
  8. [SpringSecurity]web权限方案_用户认证_设置用户名密码
  9. [C++11]右值和右值引用
  10. java数组显示最大值,java 如何用方法在数组中找到最大值并显示他的名称?
  11. 分号与逗号的区别及举例_如何掌握分号的用法 和顿号有什么区别
  12. 信息学奥赛一本通(1039:判断数正负)
  13. OpenShift 4 - Ingress、Route与Shard
  14. 计算机应用历年高考真题,春季高考历年真题-2013年天津市春季高考计算机试卷...
  15. 应用化工技术学计算机不,化工技术类包括哪些专业
  16. c++运行错误: string subscript out of range
  17. 备案 - 多个域名同时备案
  18. 一个撒尿只用3秒的男人,成为地球首富后,却要卖豪宅上火星?
  19. Blender 3D Architecture, Buildings, and Scenery
  20. STM32CubeIDE HAL库操作IIC (二)案例篇(MPU9250)

热门文章

  1. 树莓派利用360wifi2开机自动连接路由器
  2. 虚拟机VMware怎么完全卸载干净
  3. idea自动补全等号左边
  4. 如何使用患者调查来改善您的医疗保健服务
  5. 关于SELECT...FOR UPDATE到底锁表还是锁行
  6. 你的南理工——05年的我们相遇在这里,度过了4年
  7. 安装包安装失败,返回代码res=-113
  8. GitHub 生成秘钥及配置
  9. 2012第20周国内Android应用下载排行榜动态
  10. 利用Lotus Script 拷贝,删除物理文件(转自LOTUS 帮助)