首页
学习
活动
专区
工具
TVP
发布
您找到你想要的搜索结果了吗?
是的
没有找到

git commit

2.1 git reset --hard 丢弃最新的提交 代码提交后,需求发生变化导致之前提交的已经不合适,或者 代码提交后发现有严重bug,需要回可是使用这个命令: git reset --hard...tips: 1,HEAD^ 表示 最新提交HEAD位置往回数一个提交, 几个 ^ 就往回数几个提交; 2,HEAD~n 表示 新提交HEAD位置往回数n个提交 可以发现,reset 命令只能最新的提交...如果最后一次commit需要保留,而只想回之前的某次commit,reset命令可能就无法满足了。...总结: 最新的提交 :git reset 和 git rebase 命令都可以 中间某次提交: git rebase 可以, git reset 不可以 如果提交已经同步到远程仓库,需要使用git...push origin -f branch(分支名) 来将回也同步到远程仓库(master 分支谨慎使用 -f)

7.9K30

Git 代码

git revert 和 git reset 的区别 sourceTree 中 revert 译为提交回,作用为忽略你指定的版本,然后提交一个新的版本。新的版本中已近删除了你所指定的版本。...执行上述命令时,这该条commit号之 后(时间作为参考点)的所有commit的修改都会退回到git缓冲区中。使用git status 命令可以在缓冲区中看到这些修改。...而如果加上-–hard参数,则缓冲区中不会存储这些修改,git会直接丢弃这部分内容。可以使用 git push origin HEAD --force 强制将分区内容推送到远程服务器。...$ git reset --hard commit_id 退到/进到 指定commit_id 推送到远程 $ git push origin HEAD --force 可以吃的后悔药->版本穿梭...当你之后,又后悔了,想恢复到新的版本怎么办?

1.2K10

Git git revert

1.某次提交 git revert commitId 2.多次提交 git revert old-commitId^..new-commitId 如果我们想把这三个revert不自动生成三个新的...commit,而是用一个commit完成,可以这样: git revert -n old-commitId^..new-commitId 如果的提交并不连续,导致生成多个新的commit,此时想用一个...3.之后还想再恢复回来 如果在sim上回滚了feature/EDU-001分支,而后发现这个分支并没有问题,所以没有改动想要再合并到sim此时merge feature/EDU-001,会发现没有任何可提交的更改...2.git revert 可以针对历史中任何一个提交,而 git reset 只能从当前提交向前回溯。...参考链接:https://github.com/geeeeeeeeek/git-recipes/wiki/2.6-错误的修改

1.8K30

Git撤销&操作

:文件执行了git add操作,但想撤销对其的修改(index内) # 取消暂存 git reset HEAD fileName # 撤销修改 git checkout fileName 情况四:修改的文件已被...Pro深入浅出(二)中的重置揭秘部分 上述场景二,已进行git push,即已推送到“远程仓库”中。...我们将已被提交到“远程仓库”的代码还原操作叫做“”!注意:对远程仓库做回操作是有风险的,需提前做好备份和通知其他团队成员!...:撤销指定文件到指定版本 # 查看指定文件的历史版本 git log # 滚到指定commitID git checkout 情况二:...情况三:某次提交 # 找到要回的commitID git log git revert commitID 删除某次提交 git log --oneline -n5 ?

2.1K22

Git撤销&操作

:文件执行了git add操作,但想撤销对其的修改(index内) # 取消暂存 $ git reset HEAD fileName # 撤销修改 $ git checkout fileName 情况四...,请查看:Git Pro深入浅出(二)中的重置揭秘部分 上述场景二,已进行git push,即已推送到“远程仓库”中。...我们将已被提交到“远程仓库”的代码还原操作叫做“”!注意:对远程仓库做回操作是有风险的,需提前做好备份和通知其他团队成员!...> 情况一:撤销指定文件到指定版本 # 查看指定文件的历史版本 $ git log # 滚到指定commitID $ git checkout <filename...情况三:某次提交 # 找到要回的commitID $ git log $ git revert commitID 删除某次提交 $ git log --oneline -n5 $ git rebase

1.2K10

重置git merge

代码合并的时候,有时候合并后发现合并错了,需要回或重置 merge其实有两种方式,一种是revert,一种是reset 环境准备 构造一个已经merge的分支,并准备撤销/刚才的merge...git checkout master git merge feature 假如这个时候发现合并错误,想撤销/,下面就分别看一下revert和reset怎么操作 * revert revert的原理实际上就是提交一个反向变更...no -m option was given. fatal: revert failed 失败 no -m option was given,这是因为merge是把两个分支合并到一起,的话,就必须告诉...759fb3f3c740764563ab11a03fdf5a3ad13ed9b9 commit 2 d7757c8fb1c65449d4e436b1c9bc575f79a01ce5 commit 1 日志中可以看出来,虽然合并进来的分支内容都退回了,但是提交记录以及记录都在...merge --abort 参考 当你决定去 revert 一个merge commit git reset soft,hard,mixed之区别深解 GitMerge

2.6K20

git 错误的push

[code_rollback] 一、背景 有时候,工作时会错误地对一些修改进行commit并push到远程,这时候想回这部分commit,并且远程分支也同步 二、git 操作 首先,查看需要回滚到哪个...commit-id处 git log # 如果需要查看详细的改动,可以尝试使用如下命令 git log -p 接着,回退到具体的commmit-id处(注意,reset --hard是不可逆的,详细查看...reset --hard和 reset --soft的区别) # 本地git git reset --hard # 特殊情况:如果本地还有没有提交的变更 git stash git...reset --hard git stash pop 最后,强制使用本地变更覆盖remote ref # remote git 同步 git push --force-with-lease...0d1d7fc32e5a947fbd92ee598033d85bfc445a50 Author: Me Date: Wed Nov 3 23:56:08 2010 -0400

4.1K50

Git 代码与找回的艺术

不过需要特别留意的是这些改动没有提交到 Git 仓库,Git 无法追踪其历史,一旦就直接丢弃了。...[change-in-workspace.png] 执行以下命令工作区的修改: git checkout -- build.sh 场景:已添加到暂存区时 即执行过 git add 添加到暂存区...,但还没 commit,这时可以用 git reset HEAD 文件名 。...通过git status可以看到相关提示: [change-in-staging.png] 执行以下命令暂存区的修改: git reset HEAD build.sh 后工作区会保留该文件的改动...] 关于代码的一些建议 以下是关于特定命令的使用建议: [35644b4ea0759ae5.png] 此外,总体来讲,要谨慎,不要过于依赖功能,避免使用"git push -f"。

1.5K20

Git撤销&操作(git reset 和 get revert)

代码 在上传代码到远程仓库的时候,不免会出现问题,任何过程都有可能要回代码: 1、在工作区的代码 git checkout -- a.txt # 丢弃某个文件,或者 git checkout...:文件执行了git add操作,但想撤销对其的修改(index内) # 取消暂存 git reset HEAD fileName # 撤销修改 git checkout fileName 情况四:...:已在本地进行了多次git commit操作,现在想撤销到其中某次Commit git reset [--hard|soft|mixed|merge|keep] [commit|HEAD] 上述场景二...我们将已被提交到“远程仓库”的代码还原操作叫做“”!注意:对远程仓库做回操作是有风险的,需提前做好备份和通知其他团队成员!...情况三:某次提交 # 找到要回的commitID git log git revert commitID 删除某次提交 git log --oneline -n5 git rebase -i

30.3K54

git 代码并保留提交历史

在使用git时,有时候需要回退最新代码到之前的某次提交或某个tag,将中间的所有代码提交去掉。同时保持中间的提交记录。实际应用时发现这个动作没有比较好的实现方式。...如果使用git reset, 那操作就比较麻烦,需要使用--hard 和--force 等比较危险的命令,具体如下: git reset --hard commit-id git push --force...搜索发现,利用git diff和git apply可以来比较清晰的完成这个需求,整体的思路是: 得到当前最新提交到回退提交之间的代码diff,将diff保存为文件 利用git apply 将diff作用到代码上...执行命令如下: git checkout prev-commit git diff current-branch > ~/diff.patch git checkout current-branch cat...~/diff.patch | git apply git commit -am "roll back to prev-commit" git push 这样就能既回退代码,又保留提交历史。

19920

一次 Git 的故事

实现上面场景的代码如下: vim A.txt git add . git commit -a -m "add A.txt" git push rm A.txt git commit -a "我删除了老板的东西...解决之道 看看 GIT 工作原理,分工作区、暂存区、本地版本库和远程版本库 ① 工作区:就是我们操作的目录 ② 暂存区:操作目录的快照 ③ 本地版本库:Git的精髓,人人都是中央仓库。...解决的代码如下: git log git reset --soft ${commit-id} git stash git push -f 详解如下: 第1行:git log 查看提交历史,然后找到要回的版本...第4行,覆盖 -f,对 git push -f 将本地master push 到远程版本库中, -f 强制覆盖。...小结 1. git reset 滚到某个版本之前 2. git push -f 强制push覆盖 如以上文章或链接对你有帮助的话,别忘了在文章结尾处评论哈。

45310

git-查看历史版本及版本

摘要: git-查看历史版本及版本 git-查看历史版本及版本 查看历史提交版本: 1.git log 查看历史所有版本信息 2.git log -x 查看最新的x个版本信息 3.git log...-x filename查看某个文件filename最新的x个版本信息(需要进入该文件所在目录) 4.git log –pretty=oneline查看历史所有版本信息,只包含版本号和记录描述 版本...: 1.git reset –hard HEAD^,滚到上个版本 2.git reset –hard HEAD^~2,滚到前两个版本 3.git reset –hard xxx(版本号或版本号前几位...),滚到指定版本号,如果是版本号前几位,git会自动寻找匹配的版本号 4.git reset –hard xxx(版本号或版本号前几位) filename,某个文件到指定版本号(需要进入该文件所在目录...) 未经允许不得转载:肥猫博客 » git-查看历史版本及版本

1.2K10
领券