我想在我的gitHub项目中恢复很多提交:https://github.com/MarKco/workItOut
为此,我按照我在此处找到的说明操作:Why does git revert complain about a missing -m option?和How to revert Git repository to a previous commit?
我使用了一系列重置,恢复等等。我必须承认我并不了解我所做的一切,我很着急并希望这一改变(对我而言看起来相当简单)。
我设法在我的工作目录中使用旧版本,听起来不错。我承诺并推动,但我在回购中看到的是奇怪的:
* a2c09a3 (HEAD) Test
* 55fb272 Code optimization
* 3d26a26 Removed unused files which prevented compiling
* 6433aa5 Hopefully revert to f2c37d5
* ee730b5 Revert "Revert "Merge branch 'kevinoo-master'""
* 8fca74c Revert "Revert "Revert "Merge branch 'kevinoo-master'"""
* 2f64778 Revert "Removed proguard lines from build.gradle"
* 7349cc4 Removed proguard lines from build.gradle
* 85a4d64 Revert "Revert "Merge branch 'kevinoo-master'""
* b7b6328 Revert "Merge branch 'kevinoo-master'"
* 056df48 (origin/master, origin/HEAD, master) Merge branch 'kevinoo-master'
|\
| * 30b9e79 (origin/kevinoo-master, kevinoo-master) Making it work again
| * de5af76 Make it work again
我看到两个脑袋:a2c09a3(我想成为真正的脑袋,它是我在工作目录中看到的那个)和056df48,标记为"原点/ master,origin / HEAD,master)。
如果我启动git状态,我会
HEAD detached from 056df48
nothing to commit, working directory clean
如果我试图推动,我会
Everything up-to-date
在github上我在056df48之后没有看到任何提交。
所以...我被卡住了: - /我如何让存储库只有一个头,我想要的头?
谢谢大家
答案 0 :(得分:1)
你处于一个独立的头模式,git不知道推送这个提交的分支,你可以很容易地明确告诉它哪个分支
假设您想推送到主人
git push origin HEAD:master
之后你可以git checkout master
另一个选择是将此分离分支首先合并到本地跟踪分支
从您的日志中HEAD
哈希是a2c09a3
所以
git checkout master
git merge a2c09a3
git push origin master