zoukankan      html  css  js  c++  java
  • 快速部署阿里云WebIDE(DevStudio)并参与开源项目开发

    引言:轻量应用服务器提供了DevStudio 1.12应用镜像,可以通过该镜像快速部署并使用DevStudio。DevStudio是阿里云云效推出的WebIDE产品,内部预置了Node.js、Python、Go、Java等多种主流的技术栈,同时已预安装好各开发环境所需的软件包和插件,支持智能编码助手,方便用户快速地编辑、调试、运行、部署云端代码。

     

    本文将以开源项目Ethereum为例进行介绍。Ethereum是下一代智能合约和去中心化应用平台,Go Ethereum是Ethereum协议的三个原始实现之一(另外两个是C++和Python ),用Go语言编写,代码完全开源。

     

    在正式开始部署前,请确保已注册并登录GitHub。

     

    步骤1:部署DevStudio

     

    1.登录轻量应用服务器管理控制台

    2.在左侧导航栏,单击服务器列表

    3.在轻量应用服务器售卖页,完成资源配置

    ◾创建轻量应用服务器的具体操作,见以下文档:

        https://help.aliyun.com/document_detail/223757.htm

    ◾其中,需要在镜像区域,选择应用镜像为DevStudio 1.12。

    补充.png

     

    ◾创建完成后,返回服务器列表,可以查看到DevStudio服务器的卡片信息。

    1.png

     

    步骤2:打开DevStudio

     

    1.登录DevStudio云端开发平台

    • 以阿里云账号登录轻量应用服务器管理控制台。
    • 在左侧导航栏,单击服务器列表。
    • 在服务器列表页面,找到通过DevStudio镜像创建的轻量应用服务器,然后单击服务器卡片。
    • 在左侧导航栏,选择应用管理 > 应用详情。
    • 在DevStudio使用步骤区域,单击访问您的Devstudio云端开发平台。

    说明: 只有阿里云账号能够访问DevStudio云端开发平台,RAM用户无法访问。

    2.png

     

    2.在DevStudio中,可查看默认创建的工作空间

    3.png

     

    步骤3:开发代码

     

    本文以某个人的GitHub账号ruopuzi为例。

    1.Fork开源项目Go Ethereum到自己的GitHub主页

    • 在GitHub中打开开源项目Go Ethereum
    • 在页面右上角,单击Fork

    4.png

    复制后代码库如下图所示。

    5.png

     

    2.将公钥配置到GitHub。

    i. 在DevStudio工作空间的菜单栏中,选择终端 > 新终端。

    6.png

     

    ii. 运行以下命令,生成密钥对。

    •  
    ssh-keygen

    生成密钥对的过程中,系统会提示输入密钥对存放目录和密钥对密码,你可以手动输入,也可以按Enter键保持默认。回显信息类似如下所示。

    $ssh-keygen
    Generating public/private rsa key pair.
    Enter file in which to save the key (/home/admin/.ssh/id_rsa):
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
    Your identification has been saved in /home/admin/.ssh/id_rsa.
    Your public key has been saved in /home/admin/.ssh/id_rsa.pub.
    The key fingerprint is:
    b6:66:5d:8b:2f:9b:78:bf:d2:17:94:1f:af:*:*:* admin@iZbp1d0y7cs0n99m1o7****
    The key's randomart image is:
    +--[ RSA 2048]----+
    |                 |
    |                 |
    |               . |
    |              o. |
    |        S   .. .o|
    |       . o o ...o|
    |        + o... oE|
    |       o .+o. ++ |
    |        ..****...|
    +-----------------+

    iii. 运行以下命令,查看并复制公钥文本。

    •  
    cat /home/admin/.ssh/id_rsa.pub

    iv. 将公钥配置到代码平台。

    • 打开GitHub的SSH Key 配置页面
      链接地址:https://github.com/settings/keys
    • 在页面右上角,单击New SSH Key
    • 在弹出的对话框中,输入复制的公钥文本,并单击Add SSH Key

    3.在DevStudio的终端,运行以下命令,克隆GitHub代码平台上的代码。

    本示例将代码克隆到/home/admin/workspace目录下。

    cd /home/admin/workspace
    # clone代码
    git clone git@github.com:ruopuzi/go-ethereum.git --depth=1
    # 配置开发者账号
    cd go-ethereum
    git config user.name ruopuzi
    git config user.email goodyfx****@163.com

    参数说明

    ◾ ruopuzi/go-ethereum:为复制后的工程名称,需替换为实际的工程名称。

    ◾ user.name:用户名,需替换为实际的用户名,例如:ruopuzi。

    ◾ user.email:用户邮箱,需替换为实际的邮箱,例如:goodyfx****@163.com。

     

    4.添加代码文件到工作区。

    i. 在左侧的文件导航栏,选择... > 将文件夹添加到工作区。

    7.png

     

    ii. 在弹出的对话框,单击workspace,选择go-ethereum文件夹,并单击Open

    8.png

     

    iii. 在左侧文件导航栏中,可以查看已加入的代码工程。

    9.png

     

    5.创建代码分支。

    i. 在菜单栏中,选择终端 > 新终端。

    ii. 选择添加的代码工程。

    10.png

     

    iii. 运行以下命令,创建特性分支。

    本示例创建的分支为feature/testme。

    •  
    git checkout -b feature/testme

     

    6.开发代码并查看更改的代码。

    i. 根据业务需求编辑代码,并在菜单栏选择文件 > 保存。

    ii. 在页面左上角,单击10.1.png图标,查看更改的代码。

     

    7.提交代码。

    i. 在更改区域,单击文件后的+,将文件加入暂存区。

    11.png

     

    ii. 在输入框中输入提交信息,并单击全部提交。

     

    8.推送代码。

    i. 在源代码管理:GIT区域,选择... > 推送到。

    12.png

     

    ii. 选择远程代码仓库地址。

    13.png

     

    9.创建代码合并请求。

     i. 在GitHub中打开Fork的go-ethereum代码库。

        本示例中为: https://github.com/ruopuzi/go-ethereum/

    ii. 单击Pull Requests。

    iii. 单击New pull request。

    14.png

     

    iv. 选择自己开发的分支后,单击Create pull request。

    15.png

     

    等待开源社区的其他开发者对你的代码评审与评论,最终完成代码合并即可。

    通过以上3个步骤的部署,就可以在轻量应用服务器上使用DevStudio进行代码的开发了,是不是步骤清晰、简单易懂?马上试一试吧~

    如果你想了解更多关于轻量应用服务器和DevStudio的相关知识,可以访问下面文档链接:

    轻量应用服务器

    DevStudio

  • 相关阅读:
    B.Icebound and Sequence
    Educational Codeforces Round 65 (Rated for Div. 2) D. Bicolored RBS
    Educational Codeforces Round 65 (Rated for Div. 2) C. News Distribution
    Educational Codeforces Round 65 (Rated for Div. 2) B. Lost Numbers
    Educational Codeforces Round 65 (Rated for Div. 2) A. Telephone Number
    Codeforces Round #561 (Div. 2) C. A Tale of Two Lands
    Codeforces Round #561 (Div. 2) B. All the Vowels Please
    Codeforces Round #561 (Div. 2) A. Silent Classroom
    HDU-2119-Matrix(最大匹配)
    读书的感想!
  • 原文地址:https://www.cnblogs.com/tanxingjisuan/p/15704791.html
Copyright © 2011-2022 走看看