Git checkout旧提交,并进一步提交新提交

时间:2016-09-07 13:22:06

标签: git github bitbucket

仅供参考:我正在使用bitbucket推动我的git(我知道不是很重要)。

我正在开发一个项目,其中我做了更改,并推送到原始主人,只是意识到主人有一些主要的错误,因此我检查了一个特定的旧提交,在同一主分支中使用

git checkout commit_name

之后我开始进一步工作并继续添加和提交,现在我迷失了如何保留以下新提交,以及不丢失早期(错误)主人。基本上如何回到正轨。

P.S。我尝试使用git push -u origin master,但它返回Everything up-to-date,没有任何内容被推送到bitbucket。

1 个答案:

答案 0 :(得分:2)

我猜你在module.exports.uploadimg = function (req, res) { var form = new multiparty.Form(); form.parse(req, function(err, fields, files) { if(err) console.log(err) cloudinary.uploader.upload(files.file[0].path,function(result) { res.send({ result:result, serverStatus:200, response_message:"image uploaded" }); }); }); } 。当您执行detached head时,您更新了本地存储库以检出git checkout commit_name的代码,但您不在任何分支上。你是自由式的,只能采取有限的行动。您需要返回commit_name分支。

  1. master移至新创建的分支git checkout -b branch_tmp
  2. branch_tmp将您的最后一次提交应用于主
  3. git rebase master
  4. git checkout master使用之前完成的提交更新您的git merge branch_tmp分支,并在master上显示
  5. branch_tmp
  6. git push origin master清理您的存储库
  7. 在任何步骤中,我建议您查看记录历史记录以了解所执行的不同操作。

    您可以找到有关分离头there

    的更多信息