Git 中恢复失败

问题描述 投票:0回答:1
C:\Users\Igor\OneDrive\Documents\dbhandler_app [master ↑2 +10 ~1 -0 !]> git log
commit 2acfb51145022013be9cf65aa6bb154aaadc947e (HEAD -> master)
Merge: 428c94aad9 5cf5a6a5e5
Author: oneeyeman1 <[email protected]>
Date:   Sat Jan 6 20:50:52 2024 -0600

    Fix merge conflict

commit 5cf5a6a5e57f9aa6cb328c55e8eafa03169afe87 (origin/temp, temp)
Author: oneeyeman1 <[email protected]>
Date:   Sat Jan 6 20:34:23 2024 -0600

    Show namd properties withot interfering with the main window layout

commit 428c94aad9789b9d5d57b51b13f63f4249c667e8 (origin/master)
Author: oneeyeman1 <[email protected]>
Date:   Thu Jan 4 21:06:11 2024 -0600

    Implement showing the and properties dialog

commit ba923f75a327cd5e8e505ef87db29a1d1405511b
Author: oneeyeman1 <[email protected]>
Date:   Mon Jan 1 23:37:21 2024 -0600

    Fix layout when switching query sources

commit 715a40549b907aa98480a17fd84ee95eab67c37f
Author: oneeyeman1 <[email protected]>
Date:   Mon Jan 1 17:43:01 2024 -0600

    Fix sizing of the child window

commit cbfcc99ecc49ef5e44a76385384ba37f739c7a29
Author: oneeyeman1 <[email protected]>
Date:   Mon Jan 1 14:40:34 2024 -0600

以上是我的GitHub的小技巧。

在临时分支中我修复了一个损坏,但不幸的是我没有正确合并它。

所以我的想法是恢复最后 2 次提交/合并并将临时分支合并到 master 中来解决问题。

但是,

C:\Users\Igor\OneDrive\Documents\dbhandler_app [master ↑2 +10 ~6 -0 !]> git revert 2acfb51145022013be9cf65aa6bb154aaadc9
47e
error: commit 2acfb51145022013be9cf65aa6bb154aaadc947e is a merge but no -m option was given.
fatal: revert failed

我们的想法是转到 ba923f75a327cd5e8e505ef87db29a1d1405511b,然后合并临时分支。

这里最好的做法是什么?

git
1个回答
0
投票

作为防止数据丢失的预防措施,我总是建议首先保存您的工作,至少在大多数情况下制作一个新的 zip 文件就足够了(尽管要注意它不会保存一些可能相关的文件系统权限)

当您使用 Windows 时,您只需在文件系统中的存储库外部导航,右键单击文件夹并选择创建 Zip Archive 或类似内容


也就是说,您现在可以回到过去(哇) - 首先保存更多数据 - 创建一个新分支

git checkout -b 2024-01-07_backup

然后回到原来的分支

git checkout -

然后您可以继续撤消提交(它们将保存在您的其他分支和 zip 文件中)

git reset --soft ba923f75a327cd5e8e505ef87db29a1d1405511b

查看您保存的内容,如果您确信不需要它,请将其删除或

stash
稍后使用

然后你可以将旧的“临时分支”合并回来


git checkout -b 2024-01-07_backup
git checkout -
git reset --soft ba923f75a327cd5e8e505ef87db29a1d1405511b
git stash

git merge "whatever you called you temp branch"
© www.soinside.com 2019 - 2024. All rights reserved.