android-studio - 如何返回 GitHub 的一个点并且仍在 Android Studio 的 master 分支中?
问题描述
我在 Android Studio 3.3.1 的项目中使用 GitHub。
我在本地master分支中编写代码并将它们推送到远程origin/master。
Submit_3 Image 是我的最新作品并提交结果快照。
发现Submit_1 Image snapshot之后的代码有问题,所以希望返回Submit_1,写新的代码。我希望我仍然可以在 master 分支上做新的工作,我该怎么办?
顺便说一句,目前我使用Checkout Revision命令返回 Submit_1(参见当前图像),并为 Submit_1 创建一个临时分支,然后切换到主分支并合并临时分支。但是我发现结果就像 Result Image is the same Submit_3 Image,为什么?
解决方案
合并 temp 后得到相同结果的原因是因为您基本上合并了 master 中的内容(包括错误的内容)和 temp 中的内容;因此,同时拥有错误和正确的代码。
解决您最初的问题:
- git checkout master => 转到 master 分支
- git log -n [some number] => 显示提交信息列表;例如。git log -n 5 将显示最后 5 条提交消息。
- 找到您要返回的提交的提交号。复制它。
- git reset --hard [commit number here] => 这会将 master 返回到您在提交编号中选择的位置。小心,这将清除提交后的所有内容。
- 我不记得你是否需要 git push 或者它为你做。通过执行 git status 进行检查
- 继续编写您的代码。如果你在 temp 中有新的东西,此时,如果你做 git merge temp。它会得到你的新东西,并且不会有以前在 master 中的错误代码。如果出现任何问题,请执行我上面描述的操作以返回任何提交。
祝你好运!
另外,这里的官方文档:https ://git-scm.com/docs/git-reset
推荐阅读
- c - C 预处理器宏多参数
- c++ - 如何在 C++ 中使用用户输入在另一个内部创建多个 if 语句?
- javascript - 每隔一个映射元素改变样式
- javascript - 反应JS。如何异步设置状态?
- python - 如何在不关闭文件的情况下追加到该文件?
- node.js - Express 的 1 条路线中是否可以有 2 个 get 查询?
- python - 由 PyX 创建的描边和填充矩形被 Ghostscript 错误渲染
- javascript - Node Js Http 获取事件监听器
- esp8266 - Board DOIT ESP32 DEVKIT V1 编译时出错
- c++ - 对于我的用例,是否有比最小堆更快的东西?