使用git commit修复'unbroken'代码并恢复(我的愚蠢方式)?

时间:2011-08-17 15:17:30

标签: git branch revert

当突然一切都崩溃并停止工作时,我正在branch A工作。我以为我可能会破坏我的代码中的某些内容,因此我committed我的更改并从branche B创建了新的branch A以保留其作为备份。然后我revert分支A到最后一个工作提交,并开始尝试修复任何可能的错误。我后来意识到服务器有问题而不是我的代码。所以我删除了分支A并在branch B中工作。 我这样做是因为我不是专家,所以我用我的小知识对事情进行了整理。我相信应该有更轻松,更聪明,更合适的方法来解决这个问题而不是我的“非常愚蠢”的方式:) 有什么建议吗?

2 个答案:

答案 0 :(得分:1)

您可以将A分支重置为上次工作提交,

git checkout branch_A
git reset --hard last_working_commit_id  

将B中的“不间断”代码合并回A分支,

git merge branch_B

然后删除B分支并继续使用A分支。

git branch -d branch_B

答案 1 :(得分:1)

你的工作方式没有错。在Git中,分支实际上只是指向提交的指针,当您创建更多提交时,指针会向前移动到最后一次提交。鉴于此,除了名称之外,原始分支A和当前分支B之间没有区别。

现在您已删除分支A,如果您愿意,可以将分支B重命名为分支A:

git branch -m branch-b branch-a