【Git|GitHub|SSH|Sourcetree 下篇】GitHub|Sourcetree|SSH部署及Git-flow工作流

简介: GitHub|Sourcetree|SSH快速部署、git-flow工作流、Remote Repository的克隆和推送
个人主页: 好吃懒洋洋的CSDN博客
【Git|GitHub|SSH|Sourcetree 上篇】

✅前言

❗️❗️❗️【Git|GitHub|SSH|Sourcetree 上篇】带大家熟悉了git的环境搭建以及其核心概念等等,本篇将介绍GitHub远程仓库部署SSH公钥配对远程仓库(Remote Repository)的clone&psuhSourcetree可视化工具配置、以及Git-Flow工作流等等
📢📢📢小提示: 本文后续操作都在Visual Studio Code编译器中进行,即将git init的文件夹用该编译器打开

⭕️内容

🔶GitHub

  • 简介
作为开源代码库以及版本控制系统,Github拥有超过900万开发者用户。随着越来越多的应用程序>转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。

如前所述,作为一个分布式的版本控制系统,在Git中并不存在主库这样的概念,每一份复制出的库>都可以独立使用,任何两个库之间的不一致之处都可以进行合并。

GitHub可以托管各种git库,并提供一个web界面,但它与外国的SourceForge、Google Code或中>国的coding的服务不同,GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡>献代码非常简单:首先点击项目站点的“fork”的按钮,然后将代码检出并将修改加入到刚才分出的代>码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。已经有人将GitHub称为代>码玩家的MySpace。

在GitHub进行分支就像在Myspace(或Facebook)进行交友一样,在社会关系图的节点中不断的连>线。

GitHub项目本身自然而然的也在GitHub上进行托管,只不过在一个私有的,公共视图不可见的库>中。开源项目开源项目?fromModule=lemma_inlink)可以免费托管,但私有库则并不如此。Chris >Wanstrath,GitHub的开发者之一,肯定了通过付费的私有库来在财务上支持免费库的托管这一计>划。

通过与客户的接洽,开发FamSpam,甚至是开发GitHub本身,GitHub的私有库已经被证明了物有>所值。任何希望节省时间并希望和团队其它成员一样远离页面频繁转换之苦的人士都会从GitHub中>获得他们真正想要的价值。

下面为创建一个远程仓库(remote repository)操作流程:

  • step1:创建一个github用户
  • step2:

在这里插入图片描述

  • step3:

在这里插入图片描述

  • 创建成功:

在这里插入图片描述

🔶SSH Key

  • 简介
SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。
  • 创建SSH Key
$ ssh-keygen -t rsa -C "youremail@163.com"

此时输入你之前config时的邮箱账号即可,也可进行覆盖操作

  • 指令输入操作:

在这里插入图片描述

  • 找到ssh-rsa位置演示:

在这里插入图片描述

📌Note: 虽然这里有两个id文件,但通常忽略第一个,我们只需要“.pub”文件
在这里插入图片描述

  • 在GitHub中进行ssh-key信息绑定

在这里插入图片描述

  • 测试SSH Key配对成功——固定
$ssh -T git@github.com  //@后面的内容根据平台而定 如git@gitee.com
  • 显示以下信息即为成功配对:

在这里插入图片描述

🔶Repository的克隆和推送

  • step1:先在GitHub找到开始创建好的仓库,复制其ssh地址

在这里插入图片描述

  • step2:通过Git Bash输入clone指令将GitHub上的远程仓库克隆到本地

在这里插入图片描述

  • step3:克隆成功

在这里插入图片描述

  • step4:进行addcommitpush指令操作

在这里插入图片描述

  • step5:在GitHub中查看刚刚commit的信息,该次提交当作版本"v1.0"

在这里插入图片描述

  • step6:重复上面的操作,我们又得到版本“v2.0”

在这里插入图片描述

  • step7:对比版本“v1.0”和“v2.0”,加深对git工作原理理解

v1.0:
在这里插入图片描述

在这里插入图片描述


v2.0
在这里插入图片描述

在这里插入图片描述

🔶可视化工具(Sourcetree)

SourceTree 是 Windows 和Mac OS X 下免费的 Git 客户端,拥有可视化界面,容易上手操作。同时它也是Mercurial和Subversion版本控制系统工具。支持创建、提交、clone、push、pull 和merge等操作

总而言之,这是一款非常好用的可视化Git GUI工具,即将git指令操作全部变成只需要在可视化页面中用鼠标点击,再了解git工作原理后,上手sourcetree就十分简单了,下面简单介绍一下环境配置

  • step1:在官网下载安装
  • step2:打开软件后,点击clone

在这里插入图片描述

  • step3:在GitHub中复制需要克隆的远程仓库ssh地址

在这里插入图片描述

  • step4:解决无效路径方法

在这里插入图片描述

  • step5:成功解决上述路径问题,点击克隆即可

在这里插入图片描述

  • step6:

在这里插入图片描述

🔶git工作流(git-flow)

最后,给大家介绍git工作流,这是现阶段常用的一种开发理念,对于第一次接触的人来说不需要研究的很透彻,明白其基本概念即可

  • 思想:合并、分化
  • 目的:团队、公司、多人协作开发,方便管理、分工细致、便于维护和测试
  • 主要分支:

    • 主分支(master/main):产品中大的版本发布、上线
    • 开发分支(developer):负责开发、测试等,发布每次小版本,如果产品测试、bug测试等都pass,则发布产品,回到主分支
    • 功能分支(feature-id):在开发分支上又有许多人员分担了不同的开发任务,实现每次小版本的开发
    • 修复bug分支(bug-fix):修复各大版本的新旧漏洞,修复后,与开发版本合并发出新的大版本
  • git-flow流程图:

在这里插入图片描述

🔳总结

Git篇就此告一段落,希望大家都能有所收获,最后再啰嗦一句,git作为一种工具,重要的是学会如何使用而不要过分深究其某一点(如果你是专业的开发人员那就另当别论了),byebye👋👋👋

相关文章
|
24天前
|
Shell 网络安全 开发工具
github多用户ssh配置
在Windows 10环境下,当需使用多个GitHub账号进行开发操作时,可通过生成多个SSH密钥对并配置SSH `config` 文件实现。步骤包括:1) 使用`ssh-keygen`命令为每个账号生成密钥对,保存在`C:\Users\<USERNAME>\.ssh`目录;2) 编辑`config`文件,设定每个Host对应的身份文件和用户信息,如果需要,配置代理;3) 验证通过`git clone`不同仓库来确保配置正确。
27 0
|
5天前
|
Shell Linux 网络安全
git生成SSH秘钥
git生成SSH秘钥
22 2
|
16天前
|
开发工具 git
【笔记】十分钟学会正确的github工作流,和开源作者们使用同一套流程
【笔记】十分钟学会正确的github工作流,和开源作者们使用同一套流程
36 11
|
12天前
|
Shell 测试技术 网络安全
【GIT】如何在GitHub上向一个开源项目贡献代码?
【GIT】如何在GitHub上向一个开源项目贡献代码?
26 5
|
12天前
|
开发工具 git
【已解决】error: failed to push some refs to ‘git@github.com:BATdalao/Github-green.git‘
【已解决】error: failed to push some refs to ‘git@github.com:BATdalao/Github-green.git‘
18 1
|
19天前
|
开发工具 git
出现“error: failed to push some refs to ‘https://github.com/****.git‘”,如何解决问题
出现“error: failed to push some refs to ‘https://github.com/****.git‘”,如何解决问题
|
25天前
|
开发工具 git
idea中git替换,推送到新的github或者gitlab上面
idea中git替换,推送到新的github或者gitlab上面
34 2
|
4天前
|
Shell 开发工具 git
如何使用git上传代码github仓库
如何使用git上传代码github仓库
|
12天前
|
安全 网络安全 开发工具
【GIT】GitHub添加ssh密钥
【GIT】GitHub添加ssh密钥
21 0
|
Shell 持续交付 开发工具
***git自动化部署总结
在网上搜了一堆没用找到太仔细的教程,于是花费2天时间,自己研究了下。现在分享如下: 思路:利用crontab定时去去执行git pull脚本 首先,用git clone命令将中央库的代码下载到阿里云 git clone https://username:psw@git.
968 0