Margrop
Articles158
Tags353
Categories21
1password AC AP API AppDaemon Aqara Cron Date Diagrams.net HA HADashboard HomeAssistant IP IPv4 Java LVM‑Thin Linux MacOS MySQL NAS PPPoE PostgreSQL ProcessOn Proxmox VE SSL Shell TTS TimeMachine UML Uptime Kuma Web Windows activate ad adb adblock agent aligenie aliyun alpine annotation aop authy autofs backup baidupan bash bitwarden boot brew browser caddy2 cdn centos cert certbot charles chat chrome classloader client clone closures cloudflare cmd command commit container crontab ctyun ddsm demo dependency deploy developer devtools dll dns docker domain download draw drawio dsm dump dylib edge exception export fail2ban feign firewall-cmd flow frp frpc frps fuckgfw function gcc gfw git github golang gperftools gridea grub gvt-g hacs havcs heap hello hexo hibernate hidpi hoisting homeassistant hosts html htmlparser https idea image img img2kvm import index install intel io ios ip iptables iptv ipv6 iso java javascript jetbrains jni jnilib jpa js json jsonb jupter jupyterlab jvm k8s kernel key kid kms kodi koolproxy koolproxyr kvm lan lastpass launchctl learning lede letsencrypt linux live low-code lvm lxc m3u8 mac macos mariadb markdown maven md5 microcode mirror modem modules monitor mount mstsc mysql n2n n5105 nas network nfs node node-red nodejs nohup notepad++ npm nssm ntp oop openfeign openssl os otp ovz packet capture pat pdf pem perf ping pip plugin png powerbutton print pro proxy pve pvekclean python qcow2 qemu qemu-guest-agent rar reboot reflog remote remote desktop renew repo resize retina root route router rule rules runtime safari sata scipy-notebook scoping scp server slmgr so socks source spk spring springboot springfox ssh ssl stash string supernode svg svn swagger sync synology systemctl tap tap-windows tapwindows telecom template terminal tls token totp tvbox txt ubuntu udisk ui undertow uninstall unlocker upgrade url v2ray vhd vim vlmcsd vm vmdk web websocket wechat windows with worker wow xiaoya xml yum zip 中国电信 云电脑 交换机 光猫 公网IP 内存 内网IP 升级 启动 夏令时 天猫精灵 天翼云 安装 容器 导入 小米 常用软件 广告屏蔽 序列号 应用市场 异常 抓包 描述文件 时区 显卡虚拟化 智能家居 智能音箱 梯子 模块 流程 流程图 浏览器 漫游 激活 火绒 电信 画图 直播源 续期 网关 网络风暴 群晖 腾讯 虚拟机 证书 路由 路由器 软件管家 软路由 运维监控 镜像 镜像源 门窗传感器 防火墙 阿里云 阿里源 集客

Hitokoto

Archive

NodeRed代码版本控制

NodeRed代码版本控制

问题描述

之前对于node-red代码的备份都是复制~/.node-red/flows_xxx.json文件并保存n个版本,很烦,即使使用Beyond Compare这种对比软件去对比未美化格式的json文件查看更改内容也是一团糟,

解决问题:JSON 格式美化

搜索时发现可以通过更改~/.node-red/settings.js中的设置使flows_xxx.json文件保存时就美化格式。

1
2
vim ~/.node-red/settings.js
# 搜索 flowFilePretty 找到该行并取消注释

解决问题:开启 GIT 支持

  1. 开启projects支持

    1
    2
    vim ~/.node-red/settings.js
    # 找到projects: {enabled: false} 改为 enabled: true
  2. 重启node-red

    1
    2
    ls -ll ~/.node-red/
    # 会发现多了projects/目录
  3. 重新访问node-red网页服务地址如127.0.0.1:1880
    根据提示创建或者克隆项目

  4. 侧边栏信息
    project_info_sidebar
    上图中info页显示当前的项目名
    project_local_changes
    上图中history页中,Local Changes下的Local files显示当前变更的文件,点击文件名可以看到具体节点的变化内容,按+就相当于git add filename的意思;Changes to commit显示已经add还没commit的文件,按commit后会让你输入描述,确定后就是git commit -m “description”。
    project_commit_history
    上图中,Commit History可以看到提交的历史。若设置了远程仓库地址,在这里还能看到本地比远程ahead了几个commit之类的信息,也可以push或者pull操作。

参考文章

https://mokusolo.github.io/2019/08/22/node-red%E4%BB%A3%E7%A0%81%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6/

Author:Margrop
Link:http://blog.margrop.com/post/node-red-enable-version-control/
版权声明:本文采用 CC BY-NC-SA 3.0 CN 协议进行许可