【问题标题】:A complete backup of a git branch一个git分支的完整备份
【发布时间】:2014-11-19 08:51:15
【问题描述】:

从一台 PC 上的本地 git 存储库备份完整分支以将其添加到另一台 PC 上的本地 git 存储库的最佳方法是什么。

在远程 git 存储库服务器由于其端的故障而脱机的情况。

【问题讨论】:

  • 把它推到某个地方(github)并从那里检查出来......
  • 为什么不直接克隆它?

标签: git


【解决方案1】:

首先,您可以对当前的 repo 进行本地克隆,including only your branch

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

然后你可以make a bundle of that repo,以便轻松保存它(一个bundle是一个Git repo,压缩成一个文件)。

如果您有可能在某个可访问的地方创建bare empty repo(即使通过一个简单的共享文件夹),您可以简单地将您的分支推送到它。

【讨论】:

  • 好的,这看起来很有希望。我正在克隆。 Bundle 听起来正是我所需要的。
  • @Knossos 如果您无法在某个位置创建一个空的裸仓库作为备份,那么 bundle 确实是下一个最佳选择。
  • 我可能应该补充一下这个问题 - 我正在通过远程桌面软件访问另一台 PC。为了使这个备份。它和我不在同一个地区。因此,通过 Internet 传输的单个文件对我来说似乎很理想。
  • 做到了。我可以转移捆绑包,将其作为远程存储库添加到我的本地存储库,一切都像刀子一样顺利。
【解决方案2】:

作为每分钟备份的 oneliner ...(这会使你的 git branch -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)

这实际上是一个 2 班轮:

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)

【讨论】:

    猜你喜欢
    • 2011-07-31
    • 1970-01-01
    • 1970-01-01
    • 2015-08-25
    • 2011-07-18
    • 1970-01-01
    • 1970-01-01
    • 2011-02-21
    相关资源
    最近更新 更多