GIT代码暂存

这篇具有很好参考价值的文章主要介绍了GIT代码暂存。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

需求:

很多时候开发一个需求就会拉一个新分支,对完成的需求有一个清晰的记录,有利于需求的管理与维护,也有利于几个需求同时进行

这样通常会有一个问题:当你新需求开发到一半时,上个需求有改变,需要你去完成后再回来接着开发,但是新开发的需求又不想提交

解决方法:

方法1:(不推荐,只能一个分支进行操作)

先commit代码,切换分支完成修改后,在回来撤销commit,回到之前状态

1:正常流程的commit代码,不push

2:撤销 git commit

git reset --soft HEAD^ (ps:如果控制台出现More?,则将命令改成 git reset --soft HEAD^^即可)

这样就成功的撤销了你的commit

注意,仅仅是撤回commit操作,你写的代码仍然保留。

如果不撤销commit,接着开发,再commit新的进度,在push的时候会push上两条commit的记录,很不优雅

方法2:(推荐,可以不同分支进行操作)

这也适用于,当你开发一个需求开发到一半的时候发现,弄错分支了,需要当前分支回到change之前的状态,在新分支上恢复你开发的内容

git stash:

暂存代码

它会保存当前工作进度,会把暂存区和工作区的改动保存到一个未完结变更的堆栈中;执行完这个命令后,在运行 git status命令,就会发现当前是一个干净的工作区,没有任何改动。

git stash 是本地的,不会上传到服务器上;

新增的文件,直接执行stash是不会被存储的:

没有在git 版本控制中的文件,是不能被git stash 存起来的。先执行下git add 加到git版本控制中,然后再git stash就可以了(新增文件时直接add就可以)

git暂存代码,GIT,git,github

操作演示: 

git暂存代码,GIT,git,github

idea上操作git stash:

git暂存代码,GIT,git,github

填写暂存信息:

git暂存代码,GIT,git,github

satsh之后分支会恢复到开发之前的状态;

恢复暂存:

切换分支解决完问题后,恢复暂存:

git暂存代码,GIT,git,github

暂存区,会有你所有的暂存信息,选择要恢复的暂存信息:

git暂存代码,GIT,git,github

如上所示,你在不同分支上的stash都会显示出来,所以也适用于,当你开发一个需求开发到一半的时候发现,弄错分支了,需要当前分支回到change之前的状态,在新分支上恢复你开发的内容

删除不需要的stash信息:(下面是错误操作,切勿模仿)

git暂存代码,GIT,git,github

结果全部clear掉了

git stash clear了,找回误删的stash:

因为stash也有对应的栈缓存用来保存log,所以可以通过以下命令查出

git log --graph --oneline --decorate  $( git fsck --no-reflog | awk '/dangling commit/ {print $3}' )

tips:这个命令只能在git bash中使用,否则无法识别awk;只能执行前面一半的命令,查出提交记录:

git暂存代码,GIT,git,github

在git bash中使用:  

git暂存代码,GIT,git,github

找到你要恢复的stash

git stash apply +编号

 git暂存代码,GIT,git,github

这个stash的内容会直接恢复到工作区,并且是未提交的状态

正确的删掉不需要的暂存stash:

git暂存代码,GIT,git,github

drop才是删除一条stash

命令操作:

快捷键操作太危险,还是命令操作安全:

git stash list :

 git暂存代码,GIT,git,github文章来源地址https://www.toymoban.com/news/detail-760424.html

到了这里,关于GIT代码暂存的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • git暂存功能(只需要两步)

    使用场景 我在写一个功能的时候发现一个bug,但是这个bug在我上一次提交的时候 好像 是没有的,所有我需要把当前的代码 暂存 ,然后查看上一次提交是否正常。 一、暂存 暂存当前所有的修改 二、恢复 恢复最近一次暂存,并把暂存删掉 上面的内容已经能够满足正常使用了

    2024年02月05日
    浏览(24)
  • 如何使用Git暂存文件再恢复

    git stash 概念:git stash命令用于临时保存当前工作目录的修改,以便在需要的时候恢复。 下面是一些常用的git stash命令: 实际操作: 比如当前修改了文件,使用git status查看修改的情况。 接着,使用命令暂存4个文件: 查看暂存情况: 然后拉取最新的代码(使用硬拉方式)。

    2024年02月10日
    浏览(26)
  • 如何在 Git 中取消暂存文件?

    在使用Git进行版本控制时,我们经常需要将文件添加到暂存区(stage)以便提交更改。但有时候我们可能会错误地将文件添加到暂存区,或者改变了对文件的修改意图,这时候我们需要取消暂存并将文件从暂存区移除。本文将详细介绍如何在Git中取消暂存文件的方法,以帮助

    2024年02月16日
    浏览(27)
  • git stash 将本地部分文件暂存,而不提交到远程仓库

    如果您想将本地部分文件暂存,而不提交到远程仓库,可以使用 git stash 命令将更改暂存到一个“临时存储区”,然后再执行提交操作。具体步骤如下: 使用 git add 命令将需要提交的文件添加到 Git 索引中。 使用 git stash push -- 文件路径 命令将指定的文件暂存到临时存储区中

    2024年02月03日
    浏览(36)
  • git实战技巧-本地刚做出的修改、暂存和提交如何进行撤销

    1、解决思路 工作区和暂存区内容的撤销,直接按照对应命令或者IDEA界面完成操作就行。 对于已提交的撤销回滚建议如下: 1. 代码如果仅仅是回撤到指定版本,该版本之上的更新是不需要的,选择Hard模式。 2. 代码回撤到指定版本时,需要保存该版本之上的更新,可以选择

    2024年02月10日
    浏览(34)
  • Git--本地修改文件暂存工作区和恢复至工作区

    当克隆一个项目到本地之后,经常需要修改配置文件,那如何做到下次再更新代码,不重复修改配置文件。可通过暂存工作区内容进行恢复。 注意:默认恢复的就是最新一次stash 说明:会展示所有的stash列表 git stash apply 暂存名 说明:通过查看stash列表,把指定的stash记录删除

    2024年02月11日
    浏览(56)
  • Git基本操作之 修改提交信息 取消暂存文件 撤销文件修改

    git 文件分为         本地文件【即你当前在git  bash终端ls 看到的文件】         暂存文件【即你使用了git  add 之后存储在index file 的文件,此文件是下一步commit的暂存】         仓库文件【即执行了git commit之后的文件】 1.修改提交信息 ,这里指的是修改 git  commit的时

    2023年04月08日
    浏览(43)
  • Git上传本地代码到Github

    参考 https://zhuanlan.zhihu.com/p/138305054 每次上传前先拉取,保证其他人提交更新一起同步, 如果是将远程仓库的仓库已经克隆到本地的项目,可以不执行第6步,如果本地代码库没有同步线上的,必须执行第6步,目的是将本地和远程仓库进行合并

    2024年02月05日
    浏览(48)
  • 【Git 从入门到精通】使用Git将本地代码推送到Github

    打开github.com,点击右上角加号,点击第一个选项。 填写库的基本信息,如果你想代码开源就选择public,否则就选择private。 填好信息后,点击创建将会到下面一个界面(框框中的链接就是库的地址): 上面一个链接就是刚才创建库的地址。 在操作远程库之前可以将远程库添

    2024年02月07日
    浏览(35)
  • 解决 github 网站 git push 或者 git clone 代码速度太慢

    工作中往往需要从 github 上 clone 别人的代码或者 Push 代码,如果特别慢或者根本连接不上!有个修改 hosts 的方法,不完全保证,可以试试! 1、获取 global.ssl.fastly 地址 访问 http://github.global.ssl.fastly.net.ipaddress.com/#ipinfo,获取 cdn 域名以及 IP Address 2、获取 global.ssl.fastly 地址 访

    2024年02月02日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包