【LM】idea操作git~将当前还未commit的数据临时保存起来

我的git汇总篇:https://blog.csdn.net/weixin_44647371/article/details/88177472

场景一:

本地开发时,某些本地专属配置(a,本地新增的一个配置文件;b.本地修改了远程仓库拉下来的某个配置文件但还没提交的)不希望被commit,因为push前有时会必须要求必须处理尚未commit的文件,可如果commit会干扰到远程仓库数据,如果回滚或删除的话下次又得重新配置,更是麻烦。

场景二:

本地开发做到一半还未提交,因为某些原因要切换到其他分支去,为了避免现有还未提交的数据既不会丢失也不会因为切换分支而带到其他分支去,需要将本地还未commit或add的代码临时保存起在一个地方,后面再切换回来的时候再将数据还原回去。

解决办法:使用stash和unstash。
原理:将本地仓库中还没有commit提交的代码全部移动到stash临时存储区,此时本地git中就不含未提交的代码可以顺利执行push了。push完后在将数据从临时存储区还原回来

解决案例1

a.如下的sdasdada.xml文件不希望被commit上去,先在下面新建一个changelist,把不需要commith或不需要add的文件移到该"不提交"下
在这里插入图片描述
b.先把要提交的部分提交了,建议最好在右键点击对应changeList进行提交,以免失误吧所有的都给commit了,此时就只剩下一些不希望被commit的内容
在这里插入图片描述
c.【重要】数据转移,现在将本地还未commit的内容全部移动到临时区中,注意,是移动,不是复制
在这里插入图片描述在这里插入图片描述
d.此时项目中就不存在未commit的文件了,可以进行push或者切换分支等其他操作了
在这里插入图片描述
e.【重要】数据还原,其他操作完了后,再还原回原来转移的数据,注意还原回来的数据记得再移动到
在这里插入图片描述
f.如果勾选了Pop stash,就会删掉临时区的数据,下次push前又要重新stash保存再unstash还原。
如果不勾选,下次push前只需将专属配置文件回滚回原始版本或删掉,下次直接再去unstash还原即可
在这里插入图片描述

解决案例2

假如从远程拉取a.txt内容为”远程配置“,此时在本地把内容改为”local配置“,因为此时a.txt的内容属于修改了但没commit提交的,可以通过stash保存到临时区,此时项目中a.txt的内容会自动还原回上次commit的内容(即”远程配置“)。如诺此时通过unstash把临时区数据还原a.txt内容会变更为”local配置“。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值