我正在家用电脑 Windows 10 上安装 Git。
我希望我的沙盒位于 C: 盘上。
如何设置 Git 以将文件提交(和推送)到我的 D: 驱动器?
我是否应该将 Git 设置为提交到 C: 驱动器并推送到 D: 驱动器?
(我想在另一个硬盘驱动器上备份。}
或者:如何使用 D: 驱动器将我的 PC 设置为服务器?{这将允许我在连接到我的 LAN 的其他计算机上创建沙箱。}
注意:我有使用其他 SCM 工具的经验,例如 PVCS、PTC Integrity、ClearCase 和 MS SourceSafe。
谢谢。
答案1
与您可能使用过的其他系统不同,Git 会在您创建存储库时存储完整的历史记录副本。因此,如果您的工作树位于 C: 上,则默认情况下,您的所有历史记录都将位于.git
工作树下的目录中。但是,您可以更改这一点。
如果您的目标是存储历史记录的副本以便进行备份,您可以通过设置远程并定期推送到它来实现。您可以使用 在 D: 上创建一个裸存储库,并git init --bare D:/path-to-repository
使用 在 C: 上的工作树中添加一个远程git remote add origin file:///D:/path-to-repository
。然后,您可以使用类似 的语法推送分支git push origin master
。(可能可以使用带反斜杠的裸 Windows 路径而不是文件 URL,但我不使用 Windows,因此为 Windows 提供正确的语法留给读者练习。)
您还可以使用称为工作树的功能,其中主存储库位于一个位置,而单个分支的工作树位于另一个位置。您可以看到如何使用 来实现这一点git worktree --help
。但是,这实际上并没有提供备份;相反,Git 历史记录和对象存储在一个位置,而您的工作树位于另一个位置。它还需要为每个分支创建一个新的工作树,这可能不是您想要的。
如果您可以在服务器上运行 SSH 或挂载网络磁盘,则可以通过网络从另一台计算机进行克隆。在后一种情况下,您可以使用正常路径而不是 URL 从裸存储库克隆。