从一个 Git 存储库中拉取并推送到另一个

时间:2021-05-18 19:24:31

标签: git github

基本上,有两个远程存储库:让我们调用一个 private 另一个 company。 在 private 上,多人正在积极工作。

我想要实现的是,在推送到 company 存储库时,不要将提交历史包含在其他人的名字中,而是作为一个名字的一堆更改推送。

有没有什么简单的方法可以使用一个本地存储库来实现这一目标?

目前,当我这样做时,

git pull private main
git push company main

它复制整个提交历史。

1 个答案:

答案 0 :(得分:1)

推送仅推送现有提交及其完整历史记录。它不会改变提交。做一个本地分支。 Sculpt it as you like。推那个。

但是,要警惕因他人的工作而获得荣誉。 Git 有一个机制来解决这个问题。每个提交都记录一个作者和一个提交者。您可以使用 git log --format=fuller 看到两者。通常这些是相同的,更改的作者与提交的人相同。有时它们不是,例如当补丁被邮寄给维护者时。作者是提交补丁的人,提交者是进行提交的维护者。

考虑改用这种机制。保留作者,但让自己成为提交者。