首页 > 其他分享 >如何使用 Git 管理配置文件

如何使用 Git 管理配置文件

时间:2022-09-21 21:02:40浏览次数:59  
标签:core Git 配置文件 如何 git bare config

现在很多软件的配置都可以在线同步或者支持导入导出,可以很方便的在不同设备上使用。但电脑上还有很多本地配置文件没有办法同步,夸多个设备使用时很难保持一致,换电脑也很麻烦。其实可以使用 Git 来管理这些配置文件,既可以方便的备份、跨设备同步,还能进行版本控制,防止误操作。

主要思路就是在电脑上创建个裸仓,将工作区设置为所有配置文件的根目录,一般是用户的家目录。然后忽略掉所有文件,仅将需要备份的文件强制暂存起来就可以了。


具体操作如下:

  1. 先在本地创建个裸仓:
    mkdir config.git
    cd config.git
    git init --bare
    
  2. 忽略工作区内的所有文件
    echo "*" >> info/exclude
    
  3. 手动配置工作区为家目录(或其他所有配置文件的共同父目录)
    git config core.bare false
    git config core.worktree ~
    
  4. 这时可以 git status 检查下配置是否正确,例如应该回显了 nothing to commit 而不是整个工作区的文件
  5. 第一次添加文件的时候需要使用 -f 选项: git add -f ~/xxx.conf,否则会提示文件已经被忽略了
  6. 剩下的步骤就和正常使用 Git 一样了,git add -u/git commit/git push/git pull

如果已经有了配置的仓库,需要在新设备上第一次恢复配置,具体操作步骤如下:

  1. 先克隆仓库到本地的裸仓库:
    git clone --bare remote-repository-url config.git
    
  2. 手动配置工作区和忽略工作区的所有文件
    echo "*" >> info/exclude
    git config core.bare false
    git config core.worktree ~
    
  3. 因为之前克隆的是裸仓,暂存区内没有内容,所以需要先执行 git reset 命令重建下暂存区
  4. 现在可以使用 git status 检查本地配置文件和远端配置文件的差异,或者使用 git diff 对比
  5. 保险起见,应该 git checkout filename 逐个恢复,也可以使用 git checkout ~ 恢复所有配置

标签:core,Git,配置文件,如何,git,bare,config
From: https://www.cnblogs.com/val3344/p/16717121.html

相关文章

  • CSS如何实现垂直居中?
    通过vertical-align:middle注意:vertical-align:middle生效的元素必须是 display:inline-block;且必须有一个兄弟元素做参照(其原理是寻找兄弟元素中最高的元素做参照......
  • 如何确保kafka topic已经删除
    问题描述TopicExistsException:Topic'xxx'ismarkedfordeletion.在写kafka工具时,有两个方法:批量创建topic和批量删除topic。运维操作一般是,批量删除一堆topic,然......
  • win8如何开启管理员帐户
    新电脑上的进入系统后没的看到管理员账户,这应该是隐藏了,Administrator是WIN8.1有最高权限的账户。如果这权限被隐藏了,那该多悲惨的事。下面介绍win8如何开启管理员帐户:方法......
  • confd+Nacos实现nginx配置文件管理
    场景:由于公司内部站点保护的需求,将部分的站点添加白名单,这边的操作是在nginx配置文件中添加如下代码allow127.0.0.1:denyall;但随之问题也出现了,需要添加......
  • LoadRunner如何进行移动端性能测试
    一、录制脚本1.1创建脚本:新建一个用户脚本,选择MobileApplication使用管理员身份打开VirtualUserGenerator,点击【文件】->【新建脚本和解决方案】,在弹出的创建......
  • HTML5和原生app如何进行交互,有什么方法
    H5与原生app交互的原理现在移动端web应用,很多时候都需要与原生app进行交互、沟通(运行在webview中),比如微信的jssdk,通过window.wx对象调用一些原生app的功能。......
  • vue中get请求如何传递数组参数
    前言:vue中在与后端进行数据交互时,使用axios发送请求,不做配置直接使用get请求传递数组类型参数的时候,后端是无法接收数据的,需要对axios一些简单的配置才能让后端完美的接......
  • github-file-upload 配置方法
    token(这是个无效的,你需要自己获取):ghp_6qfPsQlj2WxHmhOAluO7ZsT7NAc5NX16xzyQ 如何获取?用户名/仓库名:10086/typora  如何获取?>>存放分支: master   ......
  • 【Java面试】面试官为了装X故意为难问你,为什么加索引能提升查询效率?如何回答才能惊呆
    “为什么加索引能提升查询效率”!我们都认为“加索引”提升查询效率是理所应当的竟然还有理由?该怎么回答呢?大家好,我是Mic,一个工作了14年的Java程序员下面分析一下这......
  • 【安全测试-fortify源码扫描】如何集成jenkins自动执行源码扫描
    一,效果如下点击选择文件,上传需要扫描的code压缩包点击开始构建,开始源码扫描  二、如何取测试报告工作空间只保留最新一次的报告(同时,此处做了备份处理,在executesh......