【问题标题】:Git pulling changes between two local repositoriesGit 在两个本地存储库之间拉取更改
【发布时间】:2011-08-12 03:31:06
【问题描述】:

我有两个相同远程存储库的克隆。我对一个本地存储库进行了一些更改,如何将这些更改拉到另一个本地存储库而不将其推送到远程?

【问题讨论】:

标签: git git-pull


【解决方案1】:

添加到 djs 响应。添加本地 repo 后,您可以将其视为 master,因此所有其他 git 命令都可以正常工作。

例如,如果您在目录 A 中进行了一些更改并将其保存在提交中。要检索目录 B(同一台计算机)中的这些更改,您只需在该目录中打开一个终端,然后 git pull

git pull

这将复制目录 A 中的任何更改。我使用这个系统,以便我可以拥有一个“开发”环境(目录 A)和一个“生产”环境(目录 B)。我只 git pull in dir B

【讨论】:

    【解决方案2】:

    您可以像对待另一个系统上的远程存储库一样对待第二个克隆。您可以执行所有相同的操作,例如

    ~/repo1 $ git remote add repo2 ~/repo2
    ~/repo1 $ git fetch repo2
    ~/repo1 $ git merge repo2/foo
    

    【讨论】:

    • 如果您尝试在不相关的存储库中获取和合并,请确保将 --allow-unrelated-histories 传递给合并命令。
    • 这里应该是什么foo
    • 这里的含义是,您可能在获取的 repo2 中有一个分支,其中包含您现在要合并到 repo1 中的更改(可能是您所做的)。您可以执行“git checkout repo1”来确保这是您当前的 HEAD 状态。最后一行将尝试从 repo2/foo 合并到 repo1。然后,您将解决冲突、提交并可能推送 repo1 更新。 repo2 将不受影响,因为 fetch 是来自源的分离副本。
    猜你喜欢
    • 2014-01-01
    • 1970-01-01
    • 2018-06-15
    • 2019-05-12
    • 2014-02-17
    • 2014-09-06
    • 2015-09-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多