一个git分支的完整备份

9

如何备份本地git仓库中的一个完整分支,以便将其添加到另一台PC上的本地git仓库?

在远程git仓库服务器因其故障而离线的情况下。


将它推到某个地方(GitHub)并从那里检出... - dogsgod
为什么不直接克隆它? - lboshuizen
2个回答

8

首先,您可以制作当前仓库的本地克隆,只包括您的分支:

git clone -b mybranch --single-branch /path/to/your/local/repo.git

然后您可以将该仓库打包,以便轻松保存它(捆绑包是一个Git仓库,压缩成一个文件)。

如果您有可能在某个可访问的位置创建空的裸仓库(甚至通过简单的共享文件夹),您可以直接将您的分支推到它上面。


好的,这看起来很有前途。我正在克隆的过程中。Bundle听起来正是我所需要的。 - Knossos
如果您没有在充当备份位置的空白基础仓库中创建的可能性,则档案包确实是下一个最佳选择。@Knossos - VonC
我可能应该在问题中补充说明 - 我是通过远程桌面软件访问另一台电脑的。为了进行备份,它不在我所在的同一区域。因此,对我来说,在互联网上传输单个文件似乎是理想的选择。 - Knossos
搞定了。我成功地传输了捆绑包,将其添加为我的本地存储库的远程仓库,一切都非常顺利。 - Knossos

3
作为每分钟备份的一行代码...(这将使您的git分支-a膨胀)
 git branch $(git rev-parse --abbrev-ref HEAD)--$(date "+%Y%m%d_%H%M") && git branch -a | grep -i $(git rev-parse --abbrev-ref HEAD)

实际上只有两行:

git branch $(git rev-parse --abbrev-ref HEAD)--$(date "+%Y%m%d_%H%M");
git branch -a | grep -i $(git rev-parse --abbrev-ref HEAD)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接