Windows上同时配置GitHub,Gitlab,Gitee(码云)三种开发环境

Windows上同时配置GitHub,Gitlab,Gitee(码云)三种开发环境

  • 一、介绍
    • 1、Git
    • 2、GitHub的概念
    • 3、Gitlab的概念
    • 4、Gitee的概念
  • 二、安装Git环境
    • 1、下载
    • 2、安装
    • 3、验证
  • 三、配置
    • 1、单独配置
      • ①本地生成 ssh key
      • ②添加新的shh key
    • 2、同时配置三种开发环境
      • ①清除git的全局设置
        • 删除全局配置
      • ②生成新的SSH keys
        • (1)Gitee密钥
        • (2)Gitlab密钥
        • (3)Github密钥
        • (4)文件生成
        • (5)文件拷贝
      • ③创建config文件
  • 四、使用
    • 1、创建远程仓库
    • 2、链接远程仓库推送现有文件
      • ①git初始化命令:
      • ②告诉git你是谁:
        • (1)单独配置
        • (2)同时配置
      • ③其余命令
      • ④分支操作

一、介绍

在配置之前,首先来了解一下什么是Git,什么又是GitHub,Gitlab,Gitee。

1、Git

①Git是一个开源的分布式版本控制系统,可以对项目进行版本管理。 早期是linux之父用来管理linux系统源代码的(linux是和windows一样操作系统 开源免费的操作系统)
②常见的源代码管理工具

  • git : 分布式版本控制系统
  • svn : 集中式的版本控制系统
    ③什么是版本控制系统
    版本控制系统: 用来控制源代码的版本 (类似QQ 微信 版本升级) 软件升级后 代码也会变化 代码也需要有一个版本来规范 (当涉及到版本更新 或者回退 要使用对应版本的代码)
    ④版本控制系统的分类
  • 分布式的版本控制系统 : 代码的版本分别在每个开发人员电脑上管理 管理好了之后代码的共享放到git的服务器里面 实现代码共享(相互之间可以提交和获取代码)
  • 集中式的版本控制系统 : 把代码的版本集中到一台服务器上管理 svn
    ⑤Git的基本工作流程
  • git工作区域
    Windows上同时配置GitHub,Gitlab,Gitee(码云)三种开发环境_第1张图片
  • 向仓库中添加文件的流程
    Windows上同时配置GitHub,Gitlab,Gitee(码云)三种开发环境_第2张图片

2、GitHub的概念

github 是一个基于git实现的在线代码托管仓库,提供可视化管理界面,同时提供免费账户和付费账户,提供开放和私有的仓库,大部分的开源项目都选择github作为代码托管仓库。

3、Gitlab的概念

gitlab 是一个基于git实现的在线代码仓库软件,提供web可视化管理界面,通常用于企业团队内部协作开发。

4、Gitee的概念

Gitee 是一个版本控制和协作的代码托管平台(不仅可以托管代码,还可以托管文档与图片资料)。 它可以让你和其他人一起在远程或本地项目上进行协作。

二、安装Git环境

注册完GitHub/Gitee/Gitlab之后,要想更方便的管理代码,需要安装Git环境。

1、下载

Git地址:Git

点开在首页下载即可,网站会自动下载最新版本的git环境。

2、安装

安装git采用默认安装,一直下一步即可安装完毕。
Windows上同时配置GitHub,Gitlab,Gitee(码云)三种开发环境_第3张图片

3、验证

打开组合键win+r,输入cmd打开命令行窗口,并在命令行窗口输入git命令,出现一下结果证明安装成功。
Windows上同时配置GitHub,Gitlab,Gitee(码云)三种开发环境_第4张图片

三、配置

根据不同开发需求和使用需求,将安装和使用过程分为了单独部署GitHub/Gitee/Gitlab中其中一个的方式,以及同时部署三种开发环境的方式(两种的部署方式和三种的方式一样,不同方式按照不同流程走即可)

1、单独配置

部署GitHub/Gitee/Gitlab的方式基本一致,因为我平时以使用GitHub为主,所以这里放了GitHub的部署方式,其他环境的部署方式可以参考这个哦!

①本地生成 ssh key

打开组合键win+r,输入cmd打开命令行窗口,输入以下命令:

ssh-keygen -t rsa -C "邮箱"

在使用此命令的时候会出现三段提示信息,这些提示信息不用理会,直接回车下一步即可,知道命令执行结束。
使用此命令会在本地生成一个id_rsa.pub(公钥)和id_rsa(私钥)文件,这里我们将使用公钥进行配置。

②添加新的shh key

打开以下文件目录,其中打码部分为当前电脑登录的用户名,找到id_rsa.pub文件,使用记事本或者是其他编辑器打开(这里安利一个软件Quicklook,打开微软商店可以下载,选中文件敲击文件就可以查看里面的内容,且不用担心误操作修改里面的内容)
Windows上同时配置GitHub,Gitlab,Gitee(码云)三种开发环境_第5张图片
复制其中全部内容,打开GitHub网站(登录账户),点击头像下拉的settings,找到SSH and GPG keys,打开后点击New SSH key,进行如图的操作:
Windows上同时配置GitHub,Gitlab,Gitee(码云)三种开发环境_第6张图片
关于SSH:

Secure Shell (SSH) 是一个允许两台电脑之间通过安全的连接进行数据交换的网络协议。通过加密保证了数据的保密性和完整性。SSH采用公钥加密技术来验证远程主机,以及(必要时)允许远程主机验证用户。
传统的FTP、Telnet是再网络中明文传送数据、用户帐号和密码,很容易受到中间人攻击。
SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。通过SSH可以对所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。

关于SSH Key:

SSH 密钥对 最直观的作用:让你方便的登录到 SSH 服务器,而无需输入密码。由于你无需发送你的密码到网络中,SSH 密钥对被认为是更加安全的方式。
原因是:SSH利用SSH Key来进行前面提到的基于密钥的安全验证。

2、同时配置三种开发环境

①清除git的全局设置

针对已经单独使用过git全局配置一种开发环境的情况,在同时配置三种开发环境之前,需要清除这些全局配置,如果第一次配置,可直接查看生成ssh keys部分。

删除全局配置

需删除之前全局配置的user.nameuser.email
使用以下命令查看当前的配置:

git config --global --list

Windows上同时配置GitHub,Gitlab,Gitee(码云)三种开发环境_第7张图片
此配置必须删除:

git config --global --unset user.name "你的名字"
git config --global --unset user.email "你的邮箱"

如遇配置无法删除的情况,可以通过编辑配置文件达到相同的效果:

git config --global --edit

操作命令请查看Linux相关命令,这里不做解释。

②生成新的SSH keys

新建文件夹keygen,可在任意磁盘目录;
在此目录右键,git bash here

(1)Gitee密钥

输入命令创建Gitee密钥:

ssh-keygen -t rsa -C "你的邮箱"

回车,此时会提示:

Enter file in which to save the key (/c/Users/honey/.ssh/id_rsa): id_rsa_gitee

输入id_rsa_gitee,将Gitee密钥和公钥保存到此命名的文件下,剩下步直接回车,不做任何操作。

(2)Gitlab密钥

方法同上,采用相同的命令:

ssh-keygen -t rsa -C "你的邮箱"

但此时需要使用的文件名为:id_rsa_gitlab

(3)Github密钥

方法同上,采用相同的命令:

ssh-keygen -t rsa -C "你的邮箱"

但此时需要使用的文件名为:id_rsa_github

(4)文件生成

此时在此目录下会生成如下文件:

  • id_rsa_github
  • id_rsa_github.pub
  • id_rsa_gitlab
  • id_rsa_gitlab.pub
  • id_rsa_gitee
  • id_rsa_gitee.pub

(5)文件拷贝

将这些文件全部拷贝到Windows .shh目录下,即:

C:\Users\Windows登录名\.ssh

③创建config文件

需要在.ssh文件夹下新建config文件,先新建config.txt,然后修改文件名去掉后缀。
config文件内容如下:
其中git.xxx.cn对应你使用的gitlab仓库地址

# gitlab
    Host git.xxx.cn
    HostName git.xxx.cn
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa_gitlab
    User git
# gitee
    Host gitee.com
    HostName gitee.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa_gitee
    User git
# github
    Host github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa_github
    User git

四、使用

在使用之前,需要先在各种环境中添加相应的ssh key,添加的操作在上文已经讲过,这里不再做过多赘述。

1、创建远程仓库

在GitHub/Gitee/Gitlab中创建一个远程仓库,新建的仓库是这样的。
Windows上同时配置GitHub,Gitlab,Gitee(码云)三种开发环境_第8张图片
其中出现的git命令将是接下来会使用到的命令。

2、链接远程仓库推送现有文件

因为我在平时使用的时候经常推送现有的项目到远程仓库里面去,所以这里就以这个为例子。
通过组合键win+r输入cmd打开命令提示符,切换到项目文件中去。

①git初始化命令:

git init

此命令在项目文件中会生成一个.git隐藏文件夹。

②告诉git你是谁:

(1)单独配置

单独使用GitHub/Gitee/Gitlab其中一个的时候,可以采用:

git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

注意这里需要查看gitlab中的Git global setup:
Git global setup
按照其提示配置用户名和邮箱,不然会因为邮箱配置错误而发生错误。
使用此命令仅需说明一次你说谁即可,第二次使用的时候不用重复执行此操作。

(2)同时配置

与上面的命令相似,但是需要将--global修改成--local

git config --local user.name "你的名字"
git config --local user.email "你的邮箱"

③其余命令

链接远程仓库:

git remote add origin ssh://git@你的仓库地址

仓库地址如下Windows上同时配置GitHub,Gitlab,Gitee(码云)三种开发环境_第9张图片
将所有文件提交到暂存区:

git add .

add后面可以跟 . (所有文件/文件夹) 也可以跟 文件名 / 文件夹。提交指定的文件 / 文件夹。
设置提交信息:

git commit -m "填写的信息"

提交暂存区文件 / 文件夹 到远程仓库:

git push -u origin master

还有一个重要命令,可以在每个命令执行的时候查看当前状态。
查看git状态:

git status

此时刷新GitHub仓库页面会发现项目已经提交成功。至此, GitHub/Gitee/Gitlab不管是单个还是多个环境都已经配置成功。

④分支操作

在开发过程中需要更新代码,多人协同开发一个项目等等操作,这时需要使用到git分支这一重要使用方法,此方法建立在远程仓库已经建立并且和本地链接的基础上。
创建新的分支:

git branch 分支名称

切换到指定分支:

git checkout 分支名称

查看当前分支和所有分支的情况:

git branch

将代码提交到当前分支的本地缓存区

git add .

设置提示信息:

git commit -m "完成了登录功能"

切换到主分支:

git checkout master

把刚才分支的代码整合到主分支上:

git merge 分支名称

将修改好的代码提交到远程仓库:

git push

如果想单独在远程仓库创建本地已有的分支,将使用以下方案:
切换到刚才创建的分支:

git checkout login

创建新的分支并提交到此分支里面去:

git push -u origin login

git常用命令:查看
参考:
https://blog.csdn.net/flowerspring/article/details/104962002
https://www.jianshu.com/p/1246cfdbe460
https://gitee.com/mvphp/start_with_Gitee
https://blog.csdn.net/txw0415/article/details/80615045

你可能感兴趣的:(github,windows,git,gitlab)