【发布时间】:2010-10-05 01:31:30
【问题描述】:
我有一个不寻常的想法,即使用 git 作为备份系统。所以假设我有一个目录 ./backup/myfiles 并且我想使用 git 备份它。为了保持干净,我不想在 myfiles 文件夹中有 .git 目录,所以我想我可以创建 ./backup/git_repos/myfiles。通过查看 git 文档,我尝试过这样做:
$ cd backup/myfiles
$ mkdir ../git_repos/myfiles
$ git --git-dir=../git_repos/myfiles init
Initialized empty Git repository in backup/git_repos/myfiles/
$ git --git-dir="../git_repos/myfiles/" add foo
fatal: pathspec 'foo' did not match any files
您可以看到我收到的错误消息。我做错了什么?
【问题讨论】:
-
除了你的备份想法外,这也可以用来将你的“dotfiles”(.bashrc、.vimrc 等)保存在主目录中,同时将 .git 文件夹保存在其他地方。
-
最直截了当的回答:stackoverflow.com/a/19548676/170352(因旧票而被埋葬)
-
如果您没有写入权限或不想对工作目录进行任何更改(如添加 .git/ 等),this 下面由 Leo 回答(也由旧的赞成票)是最好的。
-
@Philip,除非您的 dotfiles 存储库还包含 Git 子模块。 Git 不支持子模块与外部工作树的结合。
标签: git