我有一个带有 master 分支的存储库(repo1)和另一个带有 master 分支的存储库(repo2)。现在我想从repo2 的repo1 中创建一个新分支,其中包含所有提交历史记录。
我的预期结果:
repo2
----
|
\
master
repo1
----------
| |
\ \
master master-from-repo2
Run Code Online (Sandbox Code Playgroud) 我需要合并两个存储库而不丢失其中任何一个的历史记录。我搜索了几个论坛,但没有一个能提供完整的解决方案。在执行了从不同来源采取的几个步骤后,我可以设法连接缺失的点,并将两个单独的存储库合并到一个存储库中,并且它们的历史记录完好无损。
还有其他几个答案谈论合并分支或只是没有完整的说明/步骤。
首先,我做了一个浅克隆。之后,我发现一些旧的提交引入了一些大文件。例如,这些旧的提交一次又一次地替换了二进制文件。
现在,我不希望我的本地存储库包含这些重大更改。如何在不重新创建新存储库的情况下缩短历史记录git clone --depth=10?
# shallow clone
git clone --depth 100 ssh://git@10.7.222.111:/home/my_repository01.git
git log --oneline | wc -l # the result is 100
# Now, how can I shorten the current history to 10?
# Otherwise, I need to execute `git clone --depth=10` to recreate the repository.
Run Code Online (Sandbox Code Playgroud) 如果我在名为 的文件夹中有一个 git repo some-folder,并且我将其更改为another-folder,会不会有任何问题?
我有开发、暂存和生产存储库。
周期:开发-->分期-->生产
开发远程:起源
远程分期:发展与起源
制作远程:分期和起源
是否可以使用单个 git 命令从所有这 3 个存储库中删除 git 标签?如果是的话,怎么样?