我开始对我的代码库进行更改,但没有意识到我在一个旧主题分支上.要转移它们,我想将它们藏起来,然后将它们应用到主人的新分支中.我曾经git stash pop将正在进行的工作更改转移到这个新分支,忘记在创建新分支之前我没有将新的更改提取到master中.这导致了一堆合并冲突并且丢失了我的更改(因为我使用了pop).
一旦我正确地重新创建了新分支,我如何才能恢复我的隐藏更改以正确应用它们?
我做了一个git stash pop并最终导致了合并冲突.我从文件系统中删除了文件并执行了git checkout如下所示的操作,但它认为文件仍然未合并.然后我尝试更换文件并git checkout再次执行相同的结果.我的事件尝试用-f旗帜强迫它.任何帮助,将不胜感激!
chirag-patels-macbook-pro:haloror patelc75$ git status
app/views/layouts/_choose_patient.html.erb: needs merge
app/views/layouts/_links.html.erb: needs merge
# On branch prod-temp
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: db/schema.rb
#
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# unmerged: app/views/layouts/_choose_patient.html.erb
# unmerged: app/views/layouts/_links.html.erb …Run Code Online (Sandbox Code Playgroud) Intellij在理论上非常酷,称为Smart Checkout.当您更改分支并且当前分支中有您已修改但尚未提交的文件时,此功能会启动.
而不是强迫您提交,存储或搁置您的更改,它会为您存储它们,切换分支,然后stash pop在新分支中运行.
我想这有时是你想要的,但我在切换到错误的分支时运行了这个.
所以,现在我的master分支充满了属于另一个分支的变化,一些文件报告合并冲突,我有各种各样的痛苦.
我想要完成的是:
有没有办法做到这一点?