如何使用来自克隆repo B的提交历史记录将repo A置于版本控制之下?

时间:2018-01-15 12:26:50

标签: git repository

我有2个存储库 - repo A和repo B. Repo B是A的git克隆(Repo A是repo B的来源)。这些是私有存储库,我是唯一使用它们的存储库。 在某个时间点,回购A停止受版本控制。它已经进行了一些更改,并且所有git相关数据都已丢失(除了回购B中的内容)。如果你认为回购B是回购A的旧的过时备份,那可能会更容易。

我想这就是2个回购将以图片形式呈现的方式。

1---2    repo B
     \
      3  repo A

使用git,我想将repo A置于版本控制之下,但我想在repo B中包含存储更改的历史记录。 任何人都可以提出这样做​​的方法吗?

1 个答案:

答案 0 :(得分:2)

假设A现在只是一个没有.git的目录或其他版本信息......

# Make A a git repo
cd A
git init .

# Commit the current state
git add .
git commit -m "Commit A"

# Add B as a remote, and pull it in
git remote add B /path/to/B
git pull B master

注意 - 最终拉动可能会导致许多冲突,具体取决于A和B随着时间的推移而发生分歧,可能需要手动修复。