首页
学习
活动
专区
圈层
工具
发布

撤销远程提交-每天三分钟玩转Git (6)

提交命令: git add -A git commit -m "[+]骂了我的老板" git push origin master 好了,犯罪现场创建完成!...撤销远程提交 让我们冷静下来,用 撤消当前commit的方法 先撤消本地的commit,这次我们来试试用hard参数来撤消(不确定用hard 还是 soft,可以到上一篇推送中再做确认-> 撤消当前commit...如果还想找回来怎么办,我们还真是有办法让你找回来的,以后的推送救命的后悔药会详细讲述。 这个时候我们的状态是: ? 这个时候我们再把他强制推送到远程: ?...git push origin master --force 命令强制提交到远程仓库(注意,如果是在团队合作的情况下,不到迫不得已不要给命令加--force参数) 让我们看看github ?...当然了,我们也可以用 git reset --soft head^回滚到上一个commit的时候,保存本地代码,然后使用git stash命令把现场代码保存起来,再强制提交,这样就可以保留修改以备后续使用啦

2.7K21

适合初学者提升的Git技能

如果要查看特定作者的提交消息,则可以运行以下命令。我假设作者姓名是qianpangzi。...如果您已经将代码推送到远程存储库中,然后您意识到必须amend提交消息,那么在修改之后,您必须进行强制推送。假设您的远程名称,origin您可以运行以下命令。...通常可以找到并恢复这些孤立的提交,使用git reflog Git将在运行内部垃圾收集器后永久删除任何孤立的提交。默认情况下,git配置为每30天运行一次垃圾收集器。...恢复后,您的状态将如下图所示。 ? 在最后一次提交之前,没有添加six.txt文件,因此将其删除并将five.txt更改回之前的状态。现在,在提交您的提交历史记录后,这将是这样的。 ?...复制该提交的commit id并切换回您自己的工作分支。然后运行以下命令以获取工作分支中的提交。 git cherry-pick就像从文件夹中复制一些东西并将其粘贴到另一个文件夹中。

1.1K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android Git之旅

    更新代码的方式是什么?你还在用拷贝的方式保存代码吗?U盘?移动硬盘?还是网盘? 正文   以上的一些方式你可能在刚开始学习或工作的时候会用到,但不是长久之计,因此你需要学会使用git。...① git init git init 在输入前我们先看一下当前项目的文件夹。 下面在Terminal中输入git init 然后回车,如下图所示。   ...你有没有觉得每一条命令都要一个一个的敲很麻烦,实际上你刚才敲过的指令可以通过键盘的上下键进行切换,试试看吧。   现在我切换回git commit -m “第一次提交”,再回车一次。   ...这个main是从哪里来的呢?   推送之前要注意推送的分支是哪一个。在Terminal中下面执行命令,回车。   然后就报错了,这里的报错是因为分支不同。...git branch -d develop 我们在删除前查看一下分支,然后执行删除,删除后再查看一下:   -d表示删除标识,要删除的不能是当前显示分支,同时不能包含未合并的更改和未提交的推送。

    1.2K10

    Git的奇技淫巧?

    Git是一个“分布式版本管理工具”,简单的理解版本管理工具:大家在写东西的时候都用过“回撤”这个功能,但是回撤只能回撤几步,假如想要找回我三天之前的修改,光用“回撤”是找不回来的。...开卷必读 如果之前未使用过Git,可以学习廖老师的免费Git教程入门 一定要先测试命令的效果后,再用于工作环境中,以防造成不能弥补的后果!...放到工作区中 强制推送 增加远程仓库 联系我 展示帮助信息 git help -g 回到远程仓库的状态 抛弃本地仓库的所有版本(commit),回到远程仓库的状态。... 比如:git status 改成 git st,这样可以简化命令git config --global alias.st status 存储当前的修改,但不用提交commit...clean命令,注意两点: clean后,删除的文件无法找回 不会影响tracked的文件的改动,只会删除untracked的文件 git clean -f 强制删除untracked

    91840

    手把手带你入门github

    本地代码备份到github仓库 好了,前面说的,假如公司项目代码就放在一台电脑上,哪天这台电脑嗝屁了,那就gg了。当然你可以把它再拷贝几份到其他电脑上,但是拷贝来拷贝去,一改动都要拷贝不是很麻烦吗?...首先进入你项目所在文件夹的根目录,右键 git bash here ?...这显示的是有的,至此我们的项目文件备份就算成功啦~就算电脑哪一天炸了我也能找回我的项目啦~ 那备份有了,万一小编不小心,把公司服务器上的项目给弄炸了,该怎么找回来呢?...本地代码备份到github仓库 从远程仓库上拉取项目: 命令:git clone 远程仓库地址 我在本地一个文件夹git bash here ? 到下面这个位置点击按钮,复制地址(是https) ?...可以看到,他说我没有仓库 我们进入到下一级 cd git- 再git status ? 这里我们看到有红色的 改动 我们再重复三部曲 add commit push ?

    79832

    Git生存指南:从“后悔药”到“时光机”,代码管理不再精分!

    ”你的文件夹最后会变成这样:项目_备份/项目_最终版/项目_真的最终版/项目_昨天备份/项目_改之前/项目_不知道这是啥但先留着/Git就是这个混乱世界的救世主!...给这次修改起个响亮的名字(别写“fix bug”,三个月后你会恨自己)git commit -m "添加了让用户惊呼的炫酷功能- 用户现在可以一键生成彩虹独角兽- 修复了昨天咖啡洒键盘上导致的bug-...大概率是队友比你快一步,先拉取一下git pull origin main# 解决冲突后再push第三步:分支操作 - 人格分裂的艺术# 查看所有分支(就像看你的多重人格)git branch# 输出:...:commit是日常的关心和投入push是表达和分享pull是倾听和理解merge是妥协和融合revert是…好吧,有时候确实需要“我们回到朋友关系吧”记住,每个Git大神都曾经:强制推送过然后默默改写历史合并冲突时删掉别人的代码然后假装是...bug在凌晨三点谷歌“git如何找回删除的分支”现在,去征服你的代码吧!

    17310

    代码版本管理笔记 | Python 程序员也应该会的 Git 分支操作

    导入远程分支 把远程分支在本地创建,可以通过 git checkout 分支名 命令进行,这个命令其实是切换分支用的。...2 查看提交记录差异 - 查看新纪录 我基于生产分支上新建了一个 dev 分支,然后提交了代码;但某些原因,我忘记了我提交了几次修改,此时我就可以通过查看 dev 分支中有的记录而在生产分支中没有的记录...git reset 回滚了提交记录,想找回之前的提交记录也是可以的;可以 git reflog 查看操作历史,找到执行 git reset 命令之前 commitid ,然后 git reset --...hard 到那个 commitid 即可 从历史版本中找回删除的文件 有时候,我们在某个版本中删除了文件,后来又突然发现需要这个文件,是可以恢复的;恢复之前首先确定要恢复的文件在哪一个版本( commit...可以看到冲突符号以 的,下面的是 develop 分支的,最后以 >>>>>> 为结束符 解决冲突后这里提交版本的方式稍微有一些区别

    54520

    Git 进阶技巧合集:这些操作 99% 的程序员都忽略了

    Git 进阶技巧合集:这些操作 99% 的程序员都忽略了提前声明:这不是那种 “Git commit -m '修复 bug'” 水平的文章,我要讲的是实用性高、但经常被忽略的 Git 操作技巧。...但你知道吗?Git 真正强大的地方,不在于日常 commit 和 push,而是那些关键时刻能“救命”的高级操作。...✅ 解法:git reflog这个命令能列出你本地所有 HEAD 移动记录,就算你 reset 掉的 commit,也能找回来!...4️⃣ git cherry-pick:跨分支挑选 commit 场景:你在 feature-a 分支写了个优秀的小功能,但不想整个分支都合到 main,只想把这一个提交拿过去用。...✅ 解法:git checkout maingit cherry-pick commit-id>用这个命令你可以精确地将某个 commit 应用到当前分支,而不会引入其它提交。

    30300

    看我Git 72变,GitHub发布4已超过8000星

    大家在用Git写东西的时候都用过 “回撤” 这个功能,但是回撤只能回撤几步,假如想要找回我三天之前的修改,光用 “回撤” 是找不回来的。...开卷必读 如果之前未使用过 Git,可以学习 Git 小白教程入门 1、一定要先测试命令的效果后,再用于工作环境中,以防造成不能弥补的后果!到时候别拿着砍刀来找我。...> -m "v1.0 发布(描述)" commit-id> 推送标签到远程仓库 首先要保证本地创建好了标签才可以推送标签到远程仓库: git push origin 比如:git status 改成 git st,这样可以简化命令 git config --global alias.st status 存储当前的修改,但不用提交...clean 命令,注意两点: clean 后,删除的文件无法找回; 不会影响 tracked 的文件的改动,只会删除 untracked 的文件。

    80510

    版本控制工具——Git常用操作(下)

    ,回退远程仓库等) 哎呀,提交的时候漏了文件 tag操作 git忽略不想提交的文件 后悔药 撤消当前commit 如果你发现刚刚的操作一不小心commit了,所幸你还没有推送到远程仓库,你可以用reset...还想不通可以给我发邮件:pzqu@qq.com 救命的后悔药 来到这里我已经很清楚的你的现况了,你的代码丢了现在一定非常的着急,不要慌,总是有办法找回他们的。...的方式,可以用cherry-pick或者merge来做合并 找回忘记提交的历史记录 你之前没有commit过的文件,被删除掉了,或者被reset --hard的时候搞没了,这种情况可以说是相当的难搞了,...,那么在执行完git fsck --lost-found后会出现一堆文件 在 .git/lost-found 文件夹里,我们不管他。...v1.0的tag 创建的不带有tag的提交信息的release_v1.1 git tag查看tag 推送本地全部tag 也可以推送单个tag $ git push origin release_v1.1

    1.2K61

    Git 实战

    Git命令行操作 1.1本地库初始化 进入文件夹 git init 注意:生成的 .git 目录中存放的是本地库相关文件,不要删除 1.2设置签名 项目(仓库)级别仅在当前本地库有效 git config...我在a分支里面修改了。...://xx 1.2 推送 开发修改完把本地库的文件推送到远程仓库 前提是提交到了本地库才可以推送 git push 别名 分支名 git push -u 别名 分支名 #-u指定默认主机 例子:git...merge 别名 分支名 git pull 别名 分支名 1.5 解决冲突 注意:解决冲突后的提交是不能带文件名的 如果不是基于远程库最新版做的修改不能推送,必须先pull下来安装冲突办法解决 1.6...到自己的仓库 -- > 然后clone下来 修改后推送到远程库 --> 点击Pull Request请求 --> Create pull request发消息 1.9 Tag标签 为了清晰的版本管理

    79420

    Git常用命令汇总篇(附使用详细介绍)

    通过这些命令,开发者可以轻松地管理代码的不同版本,跟踪和回滚更改,以及协作其他开发者。 下面,我总结了Git的常用命令,一文教你如何快速控制Git。...· git reflog 会显示所有的移动HEAD的操作记录,包括commit,reset,checkout等操作,可以用来找回丢失的commit。...--no-ff选项表示即使可以进行快进(fast-forward)合并也要创建一个新的commit,这样可以在历史记录中看到这次合并操作。...这不会从暂存列表中移除该暂存,所以可以多次应用它。 · git stash pop 在应用暂存修改后,它会从暂存列表中删除这个暂存。这样做的好处是,不需要再去手动清理暂存列表。...· git rm -r --cached 文件/文件夹名字 (. 忽略全部文件) 从Git的跟踪列表中移除文件或文件夹,但不会删除物理文件。

    98540

    Git 执行放弃本地修改,使用远程版本命令后出现问题解决方案

    我有些重要的代码还没保存!" 这时候该怎么办?...在本地恢复提交(同上) git reflog git reset --hard commit_id> # 2....强制推送到远程,修正历史 git push -f origin main ⚠️ 重要警告: 强制推送会影响团队协作,务必: 通知团队成员你正在修复历史 确保没有其他人基于错误的历史进行开发 如果可能,在非工作时间操作...-b branch-name commit_id> 使用fsck找回悬空对象 # 查找所有未被引用的对象 git fsck --full --no-reflogs --unreachable --lost-found...+ git reset --hard 恢复后立即提交 已推送 高 git reflog + git push -f 通知团队成员 黄金法则: 在执行任何会丢失数据的Git操作前,确保: 已经提交了重要更改

    25410

    如何将已经执行的修改操作撤销

    情况一:修改只在工作区(还没有 git add) 场景: 你在工作区(你的项目文件夹里)修改了文件,或者新建了文件,但你还没有执行 git add 命令将这些改动添加到暂存区。...现在,你想丢弃这些在工作区里的改动,让文件回到你上次 git add 或 git commit 时的状态。 就像你提到的,如果只改了一两行,你当然可以手动删掉。...它的原理: git checkout -- [文件名] 命令的意义是:“Git,请你用暂存区(如果文件在暂存区有改动)或版本库中当前分支最新提交(如果文件不在暂存区)的那个版本的文件,来覆盖我工作区的当前文件...但不要改变我的工作区。” 执行这个命令后,暂存区里这个文件的改动就会被移除,回到它在最新提交时的状态。...记住 --hard 的强大和危险,并在必要时使用 git reflog 来找回历史记录!

    68610

    GitHub三天超4K星:玩转Git的72个神奇技巧

    大家在用Git写东西的时候都用过 “回撤” 这个功能,但是回撤只能回撤几步,假如想要找回我三天之前的修改,光用 “回撤” 是找不回来的。...开卷必读 如果之前未使用过 Git,可以学习 Git 小白教程入门 1、一定要先测试命令的效果后,再用于工作环境中,以防造成不能弥补的后果!到时候别拿着砍刀来找我。...> -m "v1.0 发布(描述)" commit-id> 推送标签到远程仓库 首先要保证本地创建好了标签才可以推送标签到远程仓库: git push origin 比如:git status 改成 git st,这样可以简化命令 git config --global alias.st status 存储当前的修改,但不用提交...clean 命令,注意两点: clean 后,删除的文件无法找回; 不会影响 tracked 的文件的改动,只会删除 untracked 的文件。

    1.1K20

    git使用步骤_小猪酸奶的使用步骤

    stream.c # 只忽略当前文件夹下的TODO文件, 不包括其他文件夹下的TODO例如: subdir/TODO /TODO # 忽略所有在build文件夹下的文件 build/ # 忽略 doc...HEAD, master) git reset B后:- A – B (HEAD, master) 解释:看不到C了,但是他还是存在的,可以通过git reset C版本号找回,前提是 C没有被...分支名 # 查看分支commit的版本号,可以写HEAD 8.找回丢失对象的最后一点希望【git fsck】 因为你的某次误操作导致commit丢失,如果git reflog都找不到,你 可以考虑使用...---- 5.推送本地分支到远程仓库 按照前面所讲,在本地开辟分支来完成某些工作,本地提交了多次后, 你想把分支推送到远程仓库,此时远程仓库并没有这个分支,你可以: git push origin...:为开源项目贡献代码 你可以Clone别人的开源项目,在看别人代码的时候,你觉得作者有 某些地方写得不好,写错,或者你有更好的想法,你在本地修改后, 想把修改push推送到开源项目上,想法很好,

    1.6K10

    实习生的代码被弄丢了!救命的时候绝对用的上——每天三分钟玩转Git (8)

    第 8 篇 找回弄丢的代码 新来的实习生【悲郭】因为不太熟悉git的使用,总是把自己的代码给弄丢了,这次好了,把辛苦写了一个月的功能全弄丢了。还好我力挽狂澜帮他恢复了过来。...这就不仅仅是用一个git reflog命令就可以简单找回来的,但只要你以前有做过add的操作把他放到过暂存区,我们就可以把他找回来。什么?你连add都没有操作过那就只能开始准备新一轮的面试了。...,每个blob代表一个文件,都可以在tree里找到 blob组件并不会对文件信息进行存储,而是只对文件的内容进行记录,文件信息存储在tree里 言归正传,我们来看看怎么恢复刚刚git reset --hard...我们再来看看上图中的commit和commit下的tree内容,可以看到他们之间的层级关系如下: 用git cat-file -p可以看到commit的内容,可以选择把这个commit合并到我们的分支里...ls -lt | sed 3q这个命令,他的含义是查找.git/objects文件夹下的普通文件 按照时间排序后 打印在终端里 sed 3q 是打印3行 sed 100q 是打印100行,随你喜欢。

    96420

    Git的使用--如何将本地项目上传到Github(三种简单、方便的方法)(二)(详解)

    7.这个步骤以后你的本地项目文件夹下面就会多出个文件夹,该文件夹名即为你github上面的项目名,如图我多出了个Test文件夹,我们把本地项目文件夹下的所有文件(除了新多出的那个文件夹不用),其余都复制到那个新多出的文件夹下...现在我通过命令行在桌面新建一个TEST文件夹(你也可以在其他任何地方创建这个文件夹),并且进入这个文件夹??第二步:通过命令git init把这个文件夹变成Git可管理的仓库 ?...第七步:在Github上创建一个Git仓库。你可以直接点New repository来创建,比如我创建了一个TEST2的仓库(因为我里面已经有了一个test的仓库,所以不能再创建TEST仓库)。?...第八步:在Github上创建好Git仓库之后我们就可以和本地仓库进行关联了,根据创建好的Git仓库页面的提示,可以在本地TEST仓库的命令行输入:$ git remote add origin https...add .把项目添加到仓库; 3、再通过git commit -m "注释内容"把项目提交到仓库; 4、在Github上设置好SSH密钥后,新建一个远程仓库,通过git remote

    174.9K4837

    Git教程 Git Bash详细教程「建议收藏」

    选这个use git from git bash only 安装完成后我的电脑上是显示了这么三个东西的。 Git CMD:   Git CMD我并没用过,但是我查了一下它是什么。...使用cd命令进入到目录中时,在Git-Bash中应该使用斜线”/”, 而不是反斜线”\” ①可以逐个输入文件夹名(在文件夹名称前要加cd ) ②也可以直接输入一个完整的文件夹路径 3.2...点和cd之间有空格 就可以回退到上一个文件夹。 3.4 新建、删除 $ mkdir +文件夹名字 只能新建文件夹 我在E盘的code文件夹下新建一个front-end文件夹。...我下边写的就是添加一个叫origin的远程仓库。 名字origin:你在往远程仓库推送的时候,你会说我要推给谁,总得给它起个名字。...下载完成后,打开这个文件夹,就发现里边有个文件夹了。文件夹名字就是远程仓库的名字。 还记得git remote -v吗?用它看一下你下下来的本地仓库连接上那个远程仓库没。

    20.1K48

    Git找回回滚后的内容和删除的文件

    欢迎点击上方"AntDream"关注我 如果我已经执行了`git reset --hard XXX`,之前的`commit`的内容还能找回来吗?...要找回之前的 commit 的内容,那我们势必得知道对应的commit 的SHA-1值吧,这个时候用git log是看不到的。...可以用下面的方法拿到://是的,你没看错,加个 -g 参数就看得到了 git log -g //或者是下面的命令 git reflog 拿到之前的 commit信息之后,我们就能找回对应的提交记录了//...,那我们可以从暂存区里面把文件恢复出来:git checkout -- new.txt 如果我们是一开头的那种情况,用 git rm 命令,就会把暂存区和工作区都删除了,那还可以从最近的 commit...同时,如果不知道怎么操作,可以用 git status 命令,它会提示一些操作://在 add 之后执行 git status //输出 On branch master Changes to be committed

    4K20
    领券