我正在开发一个开源项目,我的机器上有一个带有所有代码的git repo。回购有点大,我想在我无法访问电脑的同时继续努力。
如果我将repo复制到我的USB驱动器中它仍然表现得好像我在我的机器上的原始仓库(相同的配置等)?
如果复制不起作用,有没有办法实现这一点,而无需在USB驱动器上从头开始重新创建回购?
答案 0 :(得分:38)
它会起作用,但某些配置变量不会随身携带。
Git有三个级别的配置:系统范围(PC上的所有用户),全局(特定于用户)和特定于repo。
回购专用配置会随你的回购而移动;系统和全球配置不会。我会检查你的配置文件,如有必要,还要获取用户特定配置的副本。
答案 1 :(得分:33)
最好的方法是添加一个遥控器(即使它是一个本地文件夹)。通过这种方式,您始终可以在两者之间转移提交。当你想搬家时
git init /mnt/usb/repo
git remote add usb /mnt/usb/repo
git push usb master
最后一个命令可用于根据需要将任何分支推入文件夹。如果本地分支当前没有将远程设置为上游,则可能必须执行--set-upstream
。
另见 Stack Overflow上的git how to add a local repo and treat it as a remote one。
答案 2 :(得分:1)
我有点不喜欢将git存储库从一个地方复制到另一个地方的想法。相反,我绝对建议您为代码使用远程服务器。
至少有两个优秀的git作为服务:最着名的是GitHub,如果您不介意在公共存储库中共享代码,它将自由托管您的代码。如果您想将其保密并且不想付费,请转到BitBucket。
答案 3 :(得分:0)
我和你一样面临同样的情况。进行一些挖掘之后,我将存储库克隆到了USB驱动器上,然后将存储库从USB克隆到了另一台计算机上。然后使用以下命令在新计算机上更改回购的遥控器:git remote set-url origin
您可以使用以下方法确保添加的原点正确: