我有一个旧的Android项目,我认为我始于Eclipse或Android Studio的一些旧版本。无论如何,项目结构与Android Studio现在如何与Gradle一起组织事情完全不同。而不是尝试更新我刚开始使用相同名称的新项目开始的每个文件位置。
现在,我想更新我的github存储库,但我不想失去以前的提交,这样做像git push --force origin master
这样的事情显然会导致(请参阅此处和此处)。
这个问题类似于在保留问题,Wiki等的同时替换GitHub存储库,但我想知道Android Studio的具体情况。同样,该问题的当前答案并不能保留提交历史。
我将尝试根据此处和此处的提示来找出一种方法。如果我可以解决它,我将在下面发布答案。
-
重命名您当前的项目文件夹(您想将其放在GitHub上的新文件夹)将其重命名为
MyProjectBackup
之类的东西。 -
在Android Studio中,转到 File>新版本控制> GIT> GIT 的项目。然后使用您的github用户名和密码登录,然后从github存储库列表中选择旧项目的存储库名称。继续浏览进口向导,您应该在Android Studio中获得旧项目。(例如,例如,您的旧项目在
MyProject
中,您的新项目在MyProjectBackup
中)。 -
手动删除除了
MyProject
项目文件夹中的.git
和.gitignore
(也许还有读书文件和许可)之外的所有内容。(我尝试过git rm -r *
,但我遇到了错误。) -
从您的
MyProject
文件夹运行的命令行git add -u git commit -m "deleting old files before adding updated project"
这将为您刚刚进行的所有手册删除的工作树中的跟踪文件更新。
-
从
MyProjectBackup
中复制所有新文件。然后运行git add . git commit -m "new updated project" git push
现在,您的新项目将在GitHub,旧项目的提交历史记录仍将可用。
有用的阅读
- git基础知识 - 记录对存储库的更改