git回滚线上代码

1.如果没有push上去,可以用git reset 本地回滚到之前的代码。

git log查看版本号,然后在用git reset + 版本号回滚。

2.如果push上去了,已经覆盖了线上的代码,就需要先用git revert + 版本号 或者 HEAD(回到上一个push的版本),将线上的代码回滚,用git push -u origin master:master(可以不写,默认与分支相同) -f 强制提交。

3.git revert 和 git reset 的区别

git reset命令 
  1.git reset –mixed + 版本号 
    暂存区(add/index区)和提交区(commit区)会回退到某个版本,但代码不改变。 
  2.git reset –soft + 版本号 
    提交区(commit区)会回退到某个版本,暂存区(add/index区)不会回退,代码不改变。 
  3.git reset –hard + 版本号

    暂存区(add/index区)和提交区(commit区)会回退到某个版本,代码会改变。(推荐)

git revert命令 

  1.git revert + 版本号 
    远程master和本地master都会回退到某个版本。暂存区(add/index区)和提交区(commit区)会回退到某个版本,代码会改变。

原文地址:https://www.cnblogs.com/kakawith/p/9550208.html

时间: 2024-11-08 21:47:10

git回滚线上代码的相关文章

git 回滚到上个版本命令以及忽略某些文件提交

1.git回滚到上个版本 git reset --hard FETCH_HEAD 2.git忽略某些文件的提交 以前是用默认的.gitignore 然后再里面默认某些文件不提交.但是有个问题,.gitignore忽略不掉.因为这是一个全局的.可以改为这样子: 找到 隐藏的.git文件夹,在里面编辑.git/info/exclude文件(如果没有info则创建,默认是没有的),把要忽略的给编辑到exclude里面. 语法与.gitignore一致.两个文件区别在于,exclude只用于设置本地需要

使用git 更新线上代码

先本地代码合并://1合并分支git branch//2查看taggit tag //3添加tagcloud_crm]$ git tag -a v1.0.2 -m "0902"//4上传版本库git  push origin v1.0.2 ip:***跳转到线上服务器 //执行命令ssh crm线上目录cd /home/j/site/cloud_crm///拉代码 git pull //查看分支git branch//切taggit checkout v1.0.2//如果前端有更改gu

Git回滚代码暴力法

Git回滚有多种方式,这里使用的是[强制提交到远程分支] 效果为:如回滚前的提交记录是 1.2.3.4,使用这种方法回滚到2,那么提交记录就变成了1.2. 操作方法: 需要在本地的Git仓库,右键选择[Git Bash],输入reset --hard 命令 $ git reset --hard commit-id $ git push -f origin currentBranch 第一句作用是恢复到指定的版本,commit-id替换为对应的版本编号,在下面介绍如何获取 第二句的作用是把当前分支

git回滚远程仓库代码/错提master分支的恢复

前言 今天周五了,刚接了个新微服务模块,下班前高高兴兴开发完,提交git代码,jenkins发布到测试环境.突然看到一个提示 我最近提的代码呢?!! 想到可能会提错仓库,转念一想,不对呀,我怎有这么高的权限提到master呢? 去gitlab上看看,果然是推到了Master分支!/泪目 /泪目 于是有了这篇折腾记录! 正文 推送代码到正确的仓库 首先我得把现有的代码搞到dev分支,当前是在master上,master已经检出到本地master分支上了, 直接用现成的 master -> orgi

已经在Git Server服务器上导入了SSH公钥,可用TortoiseGit同步代码时,还是提示输入密码?

GitHub虽好,但毕竟在国内访问不是很稳定,速度也不快,而且推送到上面的源码等资料必须公开,除非你给他交了保护费:所以有条件的话,建议大家搭建自己的Git Server.本地和局域网服务器都好,不信你试试,那速度,怎一个爽字了得! 默认情况下,使用TortoiseGit同步代码,每次都需要输入用户名和密码,但为了方便可以在客户端创建ssh密钥,用于服务器端和客户端的认证(详细过程大家可参考这里),但有时会出现“ 已经在Git Server服务器上导入了SSH公钥,可用TortoiseGit同步

Ⅲ. 通过git管理github上托管的代码

实际上,通过git管理github上托管的代码,这就是git管理远程仓库! 只需要在,从"暂存区"提交到"Git仓库"之后,使用一个[git push]命令! 注意:在提交到远程仓库之前,需要先fork(克隆)该远程仓库,即先将远程仓库(项目)下载到本地!然后进行修改之后进行提交! 第一步:fork远程github仓库到本地 git clone https://github.com/xxx/Demo.git 上面代码中,地址来源: 此时,在文件夹下就会出现克隆的远程

git连接不上远程仓库---visualstudio提交代码报错:no upstream configured for branch 'master'

1,新建文件夹,在文件下下鼠标右键git bush--->git init,初始化仓库: 2,设置gitthub仓库地址:git remote add origin https://github.com/z*****g/lm.git 3,git pull origin master 4,git push --set-upstream origin master,关联一个远程分支,并从这个分支上传下带代码 git branch查看分支 git add . git commit -m "提交注

转!!git如何撤销上一次commit(或已push)

原博文地址 : https://www.cnblogs.com/lyy-2016/p/6509707.html git如何撤销上一次commit操作 1.第一种情况:还没有push,只是在本地commit git reset --soft|--mixed|--hard <commit_id> git push develop develop --force (本地分支和远程分支都是 develop) 这里的<commit_id>就是每次commit的SHA-1,可以在log里查看到

用Git向gitHub上传项目

用Git向gitHub上传项目 1.安装git 2.在git安装目录下,运行git-bash.exe  如图所示 3.在git中绑定你注册gitHub是的用户名.邮箱. $ git config --global user.name "gxn888"    // "gxn888"换成你的用户名$ git config --global user.email "[email protected]"    //[email protected]  换