我有一个iOS项目设置在github上,过去几天我开始意识到我需要重构我的大部分代码。我构建的项目没有遵守MVC的许多基础知识,现在想回去修复一切。Github,推新项目代替旧项目
主要问题是该项目足够大,重构将是一个巨大的痛苦。 有无论如何,我可以开始一个新的项目,建立它到当前位置的地方(显然有一些主要的设计更改),并把它推到github到相同的分支,而不是原来的项目?如果这不清楚,请让我知道。
我有一个iOS项目设置在github上,过去几天我开始意识到我需要重构我的大部分代码。我构建的项目没有遵守MVC的许多基础知识,现在想回去修复一切。Github,推新项目代替旧项目
主要问题是该项目足够大,重构将是一个巨大的痛苦。 有无论如何,我可以开始一个新的项目,建立它到当前位置的地方(显然有一些主要的设计更改),并把它推到github到相同的分支,而不是原来的项目?如果这不清楚,请让我知道。
考虑到您希望保留旧的历史记录,我会扩展给定的答案。在这种情况下,您不想开始新的回购;你只是想“处理”旧数据,清除旧数据并添加新数据。您可以通过以下步骤完成此操作:
git status
会显示你相当混乱(其大小取决于你曾经有多少文件)删除和添加。没关系,这是你对所有这些条目进行广泛刷新的地方,与git add --all .
。这将在您的回购,删除,新增加,所有这一切中进行处理。git commit -m "My new beginning"
。git push origin myBranch --force
瞧!您的存储库已完全制作完成,并保留了以前的历史记录。
谢谢,我认为这就是我需要知道的一切! – Firo
您可以在GitHub上,在你的.git/config中创建一个新项目,将URL更改为新的回购
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = [email protected]:[yourname]/[yournewrepo]
可以。只需创建您的新项目,并将以下命令输入命令行界面(Windows中的cmd,linux中的终端)。
cd /path/to/project
git remote add origin [email protected]:username/repo.git
git push origin master --force
这应该做到这一点。
我发现最简单的方法是将.git文件/文件夹复制到新项目中。
您是否希望保留旧存储库的历史记录,并仅仅(基本上)替换其当前内容? – KevinH
是的,基本上就像我做了一个重大的重构,但实际上只是重新启动。 – Firo