zoukankan      html  css  js  c++  java
  • git如何删除远程仓库的某次错误提交

    git如何删除远程仓库的某次错误提交

    如果远程仓库,能ssh访问,那就跟本地没什么区别

     
    reset命令有3种方式
     
    git reset --mixed
        此为默认方式,不带任何参数的git reset,就是这种方式,它回退到某个版本,只保留源码,回退commit和stage信息
     
    git reset --soft
       回退到某个版本, 只回退了commit的信息,不会恢复stage(如果还要提交,直接commit即可)
     
    git reset --hard
         彻底回退到某个版本, 本地的源码也会变为上一个版本的内容
     
    我们在远程server的仓库目录, 执行第2种soft reset就可以了
     
    如果不能ssh访问,比如 code.csdn.net 和 code.jd.com
    那么
    1)在本地把远程的master分支删除
    2)再把reset后的分支内容给push上去
     
    新建old_master分支 作为备份,以防万一
    git branch old_master
     
    将本地的old_master分支 推送到远程的old_master
    git push origin old_master:old_master
     
    本地仓库 彻底回退到某一个版本
    git reset –hard
     
    删除远程的master分支 (注意master前有个:)
    git push origin :master
     
    重新创建远程master分支(这跟我们第1次提交本地代码库给远程仓库的命令一样吧)
    git push origin master
     
     
    请参考
     
    删除远程分支
    如果不再需要某个远程分支了,比如搞定了某个特性并把它合并进了远程的 master 分支(或任何其他存放稳定代码的分支),
    可以用这个非常无厘头的语法来删除它:
    git push [远程名] :[分支名]
     
    如果想在服务器上删除 serverfix 分支,运行下面的命令:
    $ git push origin :serverfix
    To git@github.com:schacon/simplegit.git
    – [deleted] serverfix
     
    咚!服务器上的分支没了。
     
    你最好特别留心这一页,因为你一定会用到那个命令,而且你很可能会忘掉它的语法。
     
    有种方便记忆这条命令的方法:
    记住我们不久前见过的 git push [远程名] [本地分支]:[远程分支] 语法
     
    如果省略 [本地分支],那就等于是在说“在这里提取空白然后把它变成[远程分支]”。
     
    上面这小段话,来自权威文档http://git-scm.com/book/zh/Git-%E5%88%86%E6%94%AF-%E8%BF%9C%E7%A8%8B%E5%88%86%E6%94%AF
  • 相关阅读:
    C# 使用NPOI 实现Excel的简单导入导出
    C# 根据Excel模版导出文件
    移动通信第九组网络抓包作业
    武金龙老师的教导(第9小组)
    【Python核心编程笔记】一、Python中一切皆对象
    自己喜欢的几个前端框架
    2018-1-6-个人博客、博客园、微信公众号、Github、本地同步写博客
    2018-1-6-IDEA快速代码生成
    CodeMirror动态修改代码(关键: editor.getDoc().setValue(data); editor.refresh();)
    FaceId枚举表(用于VBA的加载项)
  • 原文地址:https://www.cnblogs.com/lsgxeva/p/8540497.html
Copyright © 2011-2022 走看看