【问题标题】:git update/patch on remote host without internet没有互联网的远程主机上的 git update/patch
【发布时间】:2014-07-27 08:23:17
【问题描述】:

我有一个可以访问的主机,例如:10.0.0.2 该主机无法访问我的 git 存储库和互联网。

我不想一直复制带有完整项目的 zip 存档并将其解压缩到 10.0.0.2。

git format-patch mybranch --root --stdout > ~/Downloads/mypatch.patch 为我创建了 1gb 补丁,但我无法应用它。 git format-patch -1 HEAD 在这里我无法理解我需要多少次提交,以及如何应用它们。

所以问题是:我如何在该主机上更新我的项目?

已编辑:

感谢 rsync 的建议,我写道 一点期望脚本:

#!/usr/bin/expect -f
set timeout 2
set USER "REMOTE_HOST_USER"
set PASS "REMOTE_HOST_PASSWORD"
set HOST "REMOTE_HOST" # in my case 10.0.0.2

spawn rsync -a --stats . $USER@$HOST:/path/to/project/on/remote/host/;
expect {
    "(yes/no)?*" {
    send "yes\r"
    }
}
expect "word:"
send "$PASS\r"
interact

此脚本同步我当前的文件夹和远程主机上的文件夹。

【问题讨论】:

  • 你可以 rsync。

标签: git deployment rsync patch fabric


【解决方案1】:

您可以为此use git bundle,生成一个文件,有点像存档,只是它是一个您可以从中提取的git repo。

您甚至可以生成一个增量包,以便仅复制最后几个提交(仍然作为一个文件),并从该增量包中提取。

【讨论】:

    猜你喜欢
    • 2011-09-21
    • 1970-01-01
    • 2021-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-07
    相关资源
    最近更新 更多