我已经看到有关此主题的一些信息,但没有看到关于正确策略的最终协议。
我刚买了一个新的macbook,过去几天一直都在设置。我在旧机器上有一个git repo,我想转移到新机器上,将整个文件夹移动到新机器的最佳方法是什么(注意 - 我将不再使用旧机器)
答案 0 :(得分:1)
由于git 分散(实际上意味着distributed),您可以安全地复制原始克隆整个文件夹(带有.git
子目录的文件夹)老机器给新机器而不失任何东西。即使你的本地提交或分支也将被保留,因为git在每个克隆中嵌入了完整的远程和本地历史。
直接回答您的问题
只需制作原始克隆的硬拷贝并在新的克隆上测试git命令:
# assuming you're actually on your new machine:
scp -r old-user@old-machine:/old/path/ /new/path/
cd /new/path/
# check that GIT still consider your directory as a clone
git status
# test if your remotes are still valid
git remote update
唯一需要注意的是将.git
子目录与您的副本嵌入(默认情况下可能隐藏在OSX上)。
编辑 - 您甚至可以制作原始克隆的tarball并将其提取到新计算机上(只需确保嵌入.git子目录内容)。
更进一步
您甚至可以创建原始旧计算机目录的真实git clone
并获得完全相同的结果(除了任何未提交的更改)。这是分布式 VCS的真正含义:
git clone old-user@old-machine:/old/path/ /new/path/