Git 将不同的项目推送到不同现有项目的最新提交
我不是在问为什么我不能推动回购。我想问的是,将一个新的本地项目推向一个现有回购协议的正确方式是什么,该回购协议有大量不同的代码,并且现有项目中的许多代码已被删除。这意味着我不能拉项目,因为它会添加所有旧代码回来 我有一个git项目 项目A 我对它做了一些重大更改,所以我在本地主机上创建了一个新项目,并复制了一些代码对其进行更改。现在我已经重构了我的项目,我想推动这个项目 项目B 成为项目A的最新成员。这样我可以维护项目的历史记录。而不是删除旧项目 问题 如何将项目B推送到项目A的最新提交 我尝试的 我在项目B中打开了Git 将不同的项目推送到不同现有项目的最新提交,git,github,Git,Github,我不是在问为什么我不能推动回购。我想问的是,将一个新的本地项目推向一个现有回购协议的正确方式是什么,该回购协议有大量不同的代码,并且现有项目中的许多代码已被删除。这意味着我不能拉项目,因为它会添加所有旧代码回来 我有一个git项目 项目A 我对它做了一些重大更改,所以我在本地主机上创建了一个新项目,并复制了一些代码对其进行更改。现在我已经重构了我的项目,我想推动这个项目 项目B 成为项目A的最新成员。这样我可以维护项目的历史记录。而不是删除旧项目 问题 如何将项目B推送到项目A的最新提交 我尝试
.git/config
,并将URL更改为项目A
然后试图将项目推进到现有的回购协议中,我得到了这个
错误:无法将某些引用推送到
“”提示:已更新
已拒绝,因为远程包含您没有的工作提示:没有
在当地。这通常是由另一个存储库推送提示导致的:to
相同的参考。您可能希望首先集成远程更改提示:
(例如,“git pull…”),然后再次推动。提示:请参阅“关于的注释”
有关详细信息,请参阅“git推送-帮助”中的“快进”
但如果我收回回购协议,我将添加我试图删除的所有代码 您的工作方式让您的存储库进入了一种奇怪的状态。如果您真的想保留所有历史记录,最好保留所有代码并将其从本地回购中删除,然后推动这些更改。这听起来像是你试图缩短这一步,但现在你在同步方面遇到了问题。说实话,我很惊讶git能处理得这么好 最优雅的解决方案将是遵循提示的建议,执行git拉操作,解决冲突,然后推操作。听起来这需要做很多工作,但这是最佳实践
如果有一组离散的人员在这个存储库上工作,您可以轻松地与他们交流,并且您确信您正在推送的内容是您想要的,那么您可以执行
git push-f origin master
错误消息中您不理解的内容是什么?我理解错误消息。我不是在问错误消息是什么意思。如果我使用git pull,它将把项目A中的所有代码都拉到项目中。重点是我想推动项目b,它有大量的项目a。代码被删除,成为项目a的新负责人>那么你还需要知道什么?你做了信息所暗示的事情了吗?阅读几十个现有问题中的任何一个,告诉你如何解决这个问题?是的,可能是重复的。你也有同样的问题;您的本地计算机与远程计算机不匹配。第二个答案完全符合您的要求,强制替换当前远程内容。