优雅地管理与同步个人工作环境——dotfiles manager

ByteWanderer
• 阅读 469

:::tip
实现一个完美个性化标准的目标是:一个统一管理及备份所有应用配置方式。而本篇文章带来的,就是为了满足这个目标而诞生的最佳解决方案 Dotfiles manager。
:::

<!-- more -->

若想提高自己的开发效率,得心应手的工具是必不可少的。而各软件的配置种类繁多且各不相同,这需要我们花费大量的时间去学习和记忆。这给穿插使用各种工具的我们带来了较大的记忆成本,而为了减少这种记忆成本,我们会想办法统一一个个性化标准,然后在每个软件中进行设置,以尽量匹配这一标准。

而实现一个完美个性化标准的目标是:一个统一管理及备份所有应用配置方式。而本篇文章带来的,就是为了满足这个目标而诞生的最佳解决方案 Dotfiles manager。

什么是dotfiles

Dotfiles manager,实际上就是管理dotfiles的命令管理器。而所谓dotfiles,是指文件名称以 . 为前缀的文件或文件夹的统称。对于unix-based的系统来说,这样的文件名称在文件列表中处于不可见状态,即所谓的隐藏文件,需要通过-a的方式才能查看到。

这些文件多出现在用户的根目录下,通常是给该系统用户以及其所使用的软件存储一些个性化的配置,从而达到个人使用起来更贴合习惯,从而大幅提升工作效率。如常见的terminal个性化配置.bashrc或.bash_profile, vim个性化配置.vimrc等等,都属于dotfiles的范畴。

为什么需要Dotfiles manager

工具的使用的原则应该是:让工具适应我们,而不是让我们习惯工具。因此,我们会需要对工具进行符合自己使用习惯的改造。小到各软件快捷键及alias的配置统一,大到设置一键执行的多应用联动的工具化脚本。当许多或常用,或便利的配置被添加完毕之后,给自己带来的效率提升是无与伦比的。

而这样一来,软件配置将是一个高度定制化的东西,任何一个工具都需要时间进行深度地打磨来符合自己的使用习惯。问题还会越来越多,你会发现随着高度的定制化,尽管摆脱了特定软件特定操作对你的束缚,但又似乎被固定的设备深度绑定了,因为大量杂乱的配置使得你在更换新的开发环境的时候显得尤为艰难,需要手动对每一个软件重新进行一遍设置。由此一来,配置的更新及多设备同步也是一大难题。

之前说到,一个完美的个性化标准有两点:极为方便的

这时候,就急需一个能统一管理及备份所有应用配置的方式来帮助我们完成这一目标。而对于支持文件或命令行配置的应用来说,这一目标的最佳解决方案就是Dotfiles manager。

有哪些软件能够被dotfiles manager支持

从理论上来说,一切支持文件配置或命令行配置的应用及系统都一定能被Dotfiles manager支持。对于Linux来说,这几乎包括一切软件。

对于我日常使用环境来说,目前需要用到dotfiles manager来管理配置的主要有如下一些功能:

<img src="https://zakum-1252497671.cos.ap-guangzhou.myqcloud.com/image-20210120174747924.png" alt="image-20210120174747924" style="zoom:50%;" />

点赞
收藏
评论区
推荐文章
待兔 待兔
10个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
陆石六 陆石六
2年前
Infuse for Mac: 一个优雅而强大的视频播放器
InfuseforMac:支持4KHDR,DolbyAtmos和AirPlay的视频播放器
Wesley13 Wesley13
3年前
RMAN备份恢复
1介绍RMAN是RecoveryManager的缩写,为Oracle的恢复管理器,是Oracle数据库推荐提供的一种恢复和备份数据库的工具,也是数据库管理员管理数据库常用的工具之一。它是物理备份,而EXP是逻辑备份它可以实现一致性备份,非一致性备份,增量备份,而exp且做不到很多第三方的工具也是调用rman的脚本来实现备份功能,如赛门铁克,NBU
李志宽 李志宽
3年前
想开发一个安全软件,怎么搞?
今天跟大家介绍一下,开发一个像360、QQ电脑管家这样的安全软件,有哪些核心技术,或者说哪些核心组件是必不可少的?反病毒引擎首先,第一个必不可少的就是反病毒引擎。安全软件最早的核心也就是这个东西,它的目的就是检测一个文件是不是恶意软件。反病毒引擎主要通过对文件进行静态分析,识别恶意文件的特征,与自己的病毒特征库进行匹配,来判断目标是否是恶意的。这里面主要用
Wesley13 Wesley13
3年前
virt
        当使用virtmanager命令直接去安装一个很小的镜像文件(cirros操作系统的),此时会发生一个错误,该virtmanager会无法启动这个镜像文件,原因在于virtmanager有它自己的默认的配置文件,而当我们直接从界面上去安装的过程中,使用的就是这个配置文件。作为一个新手,现在先不管这个配置文件是什么鬼,为了快速地搞定它,可
Wesley13 Wesley13
3年前
Ubuntu JFrog Artifactory 安装配置
UbuntuJFrogArtifactory安装配置Artifactory是JFrog的一个产品,是一个高可用二进制制品存储管理服务系统,它提供先进的代理、高速缓存和安全设施。用来管理构建工具(如:gradle、maven、nuget、docker等等)等所依赖的二进制仓库,以方便统一管理第三方库和发布目标版本库,从而提高软件开发效率。
Stella981 Stella981
3年前
ShardingSphere学习:03
JDBC规范与ShardingSphereShardingSphere是一种典型的客户端分片解决方案,而客户端分片的实现方式之一就是重写JDBC规范。JDBC规范简介JDBC(JavaDatabaseConnectivity)的设计初衷是提供一套用于各种数据库的统一标准,而不同
Wesley13 Wesley13
3年前
JMX01
JMX(JavaManagementExtensions)是一个为应用程序植入管理功能的框架。JMX是一套标准的代理和服务,用户可以在任何Java应用程序中使用这些代理和服务实现对应用程序的管理。这是官方文档上的定义。中间件软件WebLogic的管理页面就是基于JMX开发的,而JBoss则整个系统都基于JMX构架。我看过很多次也无法很好的理解。我个人
Stella981 Stella981
3年前
Solr搜索引擎入门知识汇总
1.技术选型,为什么用solr而不用lucene,或者其他检索工具lucene:需要开发者自己维护索引文件,在多机环境中备份同步索引文件很是麻烦Lucene本质上是搜索库,不是独立的应用程序。而Solr是。Lucene专注于搜索底层的建设,而Solr专注于企业应用。Lucene不负责支撑搜索服务所必须的管理,而Solr负责。一句
Wesley13 Wesley13
3年前
Java互联网应用和企业级应用的区别
企业级应用是为了满足企业日常运营所产生的IT应用,其目的是满足企业自己,对交付厂家而言,俗称2B业务;互联网应用则是面向个人用户,俗称2C业务。就个人经验,企业应用主要关注业务服务的能力,针对该企业的业务流程进行信息化、规范化、日志化,以提高企业业务及管理的效率。;互联网比较关注体验,用户粘性。技术上看,很多企业级应用的业务复杂性比互联网要大的多;而互
Selenium与PhantomJS:自动化测试与网页爬虫的完美结合
在当今互联网时代,自动化测试和网页爬虫技术成为了不可或缺的工具,它们不仅提高了开发效率,也为数据采集和分析提供了便利。而Selenium与PhantomJS的结合,则为这两个领域的应用带来了全新的可能性。本文将介绍Selenium与PhantomJS的基本