你的文件,任何地方。
homefiles的Python项目详细描述
你的文件,任何地方。
什么是家庭文件?
homefiles是一个程序,可以帮助您在 机器。与dropbox不同,dropbox在同一个位置( Dropbox文件夹),homefiles允许您跟踪 主目录并将其同步回其原始位置,即使在 正在跨计算机同步。
这使得homefiles非常适合跟踪您的点文件,比如 .bashrc和.vimrc。不过,你并不局限于此。与 homefiles,您可以跟踪任何类型的文件–一个 重要的电话号码,甚至是整个目录, 例如,保持所有计算机上的notes文件夹同步。
与dropbox不同,homefiles将文件存储在git 存储库,使您能够跟踪和回滚到早期版本 如果需要的话。
homefiles不能替代dropbox或google drive–您 不想在里面储存电影或照片。但对于配置和文本 文件,homefiles是管理、版本控制和 把这些分发到你所有的机器上。
你需要什么来使用家庭文件?
- 吉特
- 巨蟒2.7+
- github repo远程存储文件
功能
- 跟踪文件或目录
- 轻松地将文件克隆到另一台计算机
- 将更新同步回github
- 操作系统特定配置的操作系统捆绑包(自动检测操作系统)
- 针对机器特定配置的自定义捆绑包
开始
安装:
pip install homefiles
跟踪您的文件:
homefiles init homefiles track ~/.vimrc
将文件同步到github:
homefiles sync 'Added vimrc'
在另一台计算机上克隆文件:
homefiles clone rconradharris homefiles link
束
数据repo由名为“bundles”的目录组成。每捆 表示要复制到目标计算机上的一组文件。
捆绑包有两种类型,os-specific和custom。特定于操作系统的捆绑包将 只同步到具有匹配操作系统的计算机,例如Mac的will 同步OS-Darwinbundles,而ubuntu将同步Linux,Ubuntu,和 可能是Ubuntu-13.04束。
所有机器都将收到Defaultbundle。
此外,可以定义自定义捆绑包,只有在 直接到。
束布局
在包中,布局是相对于主目录的,因此 Default/bin/foo.sh将被符号链接为$HOME/bin/foo.sh。
同样,OS-Darwin/Documents/code/mac_only.sh将符号链接到 $HOME/Documents/code/mac_only.sh但仅在Mac上。
如果正在跟踪整个目录,则.trackeddir标记文件将 在里面。这将导致目录作为单个单元进行符号链接, 而不是将单个文件符号化。
回购布局
.homefiles/ Default/ .vimrc bin/ all_platforms.sh OS-Darwin/ Documents/ code/ mac_only.sh notes/ .trackeddir OS-Linux/ bin/ linux_only.sh OS-Ubuntu/ bin/ ubuntu_only.sh OS-Ubuntu-13.04/ bin/ raring_only.sh
高级
确定当前机器的可用平台:
$ homefiles bundles - Default - OS-Darwin $ homefiles bundles - Default - OS-Linux - OS-Ubuntu - OS-Ubuntu-13.04
跟踪特定于Mac的文件:
$ homefiles --bundle OS-Darwin track ~/.mac-specific-file.txt
使用自定义捆绑包链接:
$ homefiles --bundle=Laptop,Personal link
您可以通过使用 环境变量:
$ HOMEFILES_REMOTE_REPO=.test_repo HOMEFILES_ROOT=~/.test_root HOMEFILES_REPO=~/.test_repo homefiles sync
环境变量
- 家庭文件远程回购
- 远程回购的名称或url。默认值:.homefiles
- 家庭文件回购
- HomeFiles配置报告的存储位置。默认值:$home/.homefiles
- 家庭文件根目录
- 文件相对于此根目录进行符号链接。默认值:$HOME