跨设备和类别组织配置文件的解决方案

跨设备和类别组织配置文件的解决方案

作为 Linux 用户,我有很多非 GUI 应用程序,我通过配置文件配置它们所需的行为。我遇到的一个麻烦是,我有多个设备,我想从这些设备使用这些应用程序,同时尽量减少对我的工作流程的影响。以下是一些示例:

  • 使我的neovim行为在设备之间保持一致(重新映射、相对线路号等);
  • 启用zsh设备间相同的别名;
  • 设备之间具有一致的git配置(例如,因此我不需要在每台设备上手动配置user.nameuser.email
  • 组织我的不同ipython个人资料和设置。

还考虑到:

  • 一些配置应该在设备之间共享(例如,gitconfig);
  • 一些配置将保持本地化(例如,一些特定的zsh别名)。

有哪些可用的方法可以创建、存储和同步我的配置?从最基本的层面上讲,我考虑在 Git 存储库中创建一个localshared子目录下的不同文件和多个文件,然后每个文件都将在每台机器上的应用程序默认文件中获取。这是一种可行的方法吗?如果不是,最接近的“手动”解决方案是什么?是否有任何特定软件可用于实现这种组织?

这一基本解决方案目前的具体实施方式如下:

.
├── aliases.txt
├── git
├── ipython
│   ├── local
│   └── share
├── nvim
│   ├── local
│   │   ├── keymaps.lua
│   │   ├── options.lua
│   │   └── plugins.lua
│   └── share
├── pip
└── zsh
    ├── local
    │   ├── aliases.zsh
    │   ├── bindings.zsh
    │   ├── config.zsh
    │   ├── functions.zsh
    │   └── prompt.zsh
    └── share

相关内容