我正在编写一个 python 脚本来使我的 dotfiles 与 GitHub 上的存储库保持最新。它将点文件复制到一个单独的目录 ( ~/dotfiles
) 中,这样我的主目录就不是一个 git repo。在复制文件之前,它会filecmp.cmp( fileInLocalRepo,fileInHomeDir )
检查文件自上次复制到本地 repo 后是否发生了变化。更新所有文件后,如果有任何更改,则将更改的文件推送到 GitHub。
在我开始从多台计算机更新点文件之前,这很好用,然后旧文件可能会覆盖我的远程文件。dotfiles
如果我先将文件拉到我的本地仓库,filecmp.cmp()
仍然会说文件不同,脚本会用本地文件覆盖拉下的文件,然后推送,因为它认为有变化。
有什么办法可以找出哪个文件实际上更新?我知道 git 不会在文件属性中保留更新时间,所以我不能使用它。如何将文件从 GiHut 下载到本地存储库~/dotfiles
(