好的,这就是情景。
我犯了一个非常糟糕的新手错误。我正在研究一些代码,并没有创建一个dev分支来检查和测试开发。所以我已经对我的机器上的主分支进行了所有这些更改,这些更改仍然存在(正在开发中),我的老板希望我对生产中的应用程序进行一些更改。
我对如何做到这一点的想法是:
对此有何想法?我现在真的不想搞砸生产而且我做了太多改动以跟踪恢复代码稳定的地方。
答案 0 :(得分:1)
无需经历那么多麻烦:
git checkout master # get the 'bad' version
git branch bad-master # make a new branch called 'bad-master', cut off master's current state
git fetch # make sure you're up to date with the remote
git reset --hard origin/master # reset your master branch to origin/master's state
<work work work>
git checkout bad-master # when you're ready to work on bad-master again
请注意,git reset --hard origin/master
会丢弃您尚未办理登机手续的工作树中的任何工作......所以如果您已经完成工作但尚未投入,请确保到git stash
它。
答案 1 :(得分:0)
这是一个完全正常的情况,你可以很容易地从中恢复。
您需要做的就是:
创建一个新分支,指向您的当前版本的主
git checkout -b my-feature-branch
将您的主程序重置为与origin / master相同的内容
git checkout master
git reset --hard origin/master
就是这样。现在你的主人和你进行你的功能开发之前是一样的,并且你有一个功能分支,你可以稍后检查以恢复开发。