我有一个简单的本地 git 回购项目,我想 让开这个项目(文件夹等)到另一台计算机和工作从那里从现在开始。我不想在旧机器上留下任何东西(当然除了我的其他 git 项目)。我想让它看起来就像我一直在用这台新机器工作一样。
我可以简单地将所有文件移动到那台计算机上吗? 还是键盘有问题?我是否应该在两台机器上使用相同的密钥?如果不能简单地移动所有的文件夹,我该怎么办?我想避免设置和学习使用服务器的麻烦,因为这似乎很复杂,我不想改变我的工作流程。
我建议您使用 clone存储库来代替复制。克隆是你正在努力完成的事情的正确范例。克隆的项目还将包含所有 git元数据和信息。
clone
git
在目标机器上:
$ git clone git://your-repo/proj proj
您也可以使用 ssh://或 http://协议来访问存储库,而不是使用 git://。详情请参阅 git手册。
ssh://
http://
git://
因为每个克隆本身也是一个回购,只要克隆第一个在您的第二台计算机上。
是的,把数据拷贝到另一台机器上就足够了。使用 git 克隆几乎是同样的事情,但是它会将要克隆的计算机设置为远程源,这可能不是您想要的。
对于您的情况,最好的方法是复制文件夹(复制,scp,cp,机器复制-以其中之一为准)到新的计算机,并删除旧的文件夹。
我完全不同意@Pablo Santa Cruz 的观点,克隆是你正在做的事情的范例。不,不是的。你要把回购单转移到一台新电脑上。
为什么我不喜欢克隆这个目的:
如果您搜索备份 git 回购的方法,git 克隆不会出现在顶部的答案中。所以它不应该被用来转移回购!我也觉得仅仅一个 git clone不是一个合适的答案,因为 git clone有 --mirror选项,而 蜜饯是回购,这意味着 git clone回购不同于 git clone --mirror回购(除了是裸的,差异主要是我上面提到的)。我会做一个副本,因为我 知道什么我得到的复制回购-的 一样回购!
git clone
--mirror
git clone --mirror
何时考虑 git 克隆:
在处理一个项目时,您必须转移到一台新计算机。
在每个项目文件夹上运行此
Git 远程更新
git bundle子命令用于脱机传输存储库。
git bundle
在源计算机上,在 Git 工作区中执行以下命令:
$ git bundle create --progress myproject.bundle --all
然后将创建的文件 myproject.bundle传输到目标计算机,并在那里执行以下命令:
myproject.bundle
$ git clone myproject.bundle myproject
更多信息,请看 Bundle 子命令的 man 页。