OpenHarmony获取源码
之前建立Remote-SSH之后,我们可以在windows终端下进行命令的操作
源码获取的方式是通过repo加一些https的方式进行
1.安装repo
curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo
复制之后说权限不够
提示没有安装curl ,我们需要先安装下curl
sudo apt-get install curl
安装完成之后再输入一下上一条命令
下载完成之后,通过cat 查看拉取的repo内容
cat repo
如果输入后是空的,我们就复制一下网页的地址,在浏览器中打开
发现这就是一个脚本文件
2.安装vim
sudo apt-get install vim
通过vim进入repo
vim repo
进来之后会发现一片空白 下面有INSERT
把刚才浏览器里的脚本内容全部Ctrl+A全选复制 粘贴到vim里
完成编辑后 按左上角esc退出编辑状态
按下shigt+冒号 输入wq保存退出
接下来继续操作 将repo文件拷贝到/usr/local目录下
sudo mv repo /usr/local/bin/
拷贝之后,需要给repo文件添加可执行权限
sudo chmod a+x /usr/local/bin/repo
添加完成之后 可以用下面这条命令检测一下
pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
这个样子就是完成了
【如果你是这个样子的】
是当前系统环境没有pip或者pip3
可以安装一下pip3
sudo apt install python3-pip
可以通过指令来查询一下
pip3 --version
通过指令升级
python3 -m pip install --upgrade pip
然后再次试一下上面的那条指令
pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
这个样子就是完成的
【这一部有的人可以跳过 。。。】
3.安装git
sudo apt-get install git
我这里git是安装过的
安装git-lfs
sudo apt-get install git-lfs
设置一下git 用于后续代码的拉取
openharmony 此链接进去注册gitee账号和邮箱
在终端输入用户名 邮箱 配置保存验证
git config --global user.name"yourname"
git config --global user.email"your-email-address"
git config --global credential.helper store
创建一个openharmony的目录
mkdir OpenHarmony_master
通过cd进入到目录下
4.下载源码
repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
repo forall -c 'git lfs pull'
第一步之后信息会报错 说没有python3的环境
我们需要一个软链接
which python3 查询系统中python3的路径
通过软链接将python3设置为python
sudo ln -s /usr/bin/python3 /usr/bin/python
(前面是源文件路径,后面是目标文件路径)
设置后之后通过命令查询一下python的版本
python --version
python3 --version
再执行文件的安装
repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify
可能会出现报错,根据下面的情况来进行
问题一
sudo vim /usr/local/bin/repo
找到import sys 后添加如下代码
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
shigt+冒号 输入wq 保存 退出
再次使用repo的那个指令
repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify
出现的彩色的是让我们确认repo默认的那些功能,比如diff、repo stadus
显示的文件通过不同的颜色来显示文件不同的状态
同步代码
repo sync -c
下一步
repo forall -c 'git lfs pull'