Git 在解决冲突的时候文件覆盖
2024-08-23 09:07:46
更新代码导致被还原或覆盖的场景:
1、触发冲突的必要条件是修改同一个文件且修改的位置非常近,否则Git会自动合并其内容
避免更新代码导致被还原或覆盖的解决方案
1、少修改的地方(生产环境、公网测试环境):推荐
git pull
2、进场修改的地方(本地开发环境):推荐
git stash
2、存在两人或多人同时修改的地方(本地开发环境):推荐
git stash
(下面着重介绍 git stash)
git-stash用法小结
1. git stash会把所有未提交的修改(包括暂存的和非暂存的)都保存起来,用于后续恢复当前工作目录。
通过git stash命令推送一个新的储藏,当前的工作目录就干净了。stash是本地的,不会通过git push命令上传到git server上。
2、实际应用中推荐使用 stash 的增强功能,给每个stash加一个message,用于记录版本,使用 git stash save 取代 git stash 命令。
$ git stash save "test-cmd-stash"
Saved working directory and index state On autoswitch: test-cmd-stash
HEAD 现在位于 296e8d4 remove unnecessary postion reset in onResume function
$ git stash list
stash@{0}: On autoswitch: test-cmd-stash
3、将缓存堆栈中的第一个stash删除,并将对应修改应用到当前的工作目录下。命令 git stash pop
4、git stash pop 的增强 git stash apply ,将缓存堆栈中的stash多次应用到工作目录中,但并不删除stash拷贝。
5、查看现有stash git stash list ,在使用git stash apply命令时可以通过名字指定使用哪个stash,默认使用最近的stash(即stash@{0})。
$ git stash list
stash@{0}: WIP on master: 049d078 added the index file
stash@{1}: WIP on master: c264051 Revert "added file_size"
stash@{2}: WIP on master: 21d80a5 added number to log
6、移除stash 可以使用 git stash drop ,后面可以跟着stash名字。
$ git stash list
stash@{0}: WIP on master: 049d078 added the index file
stash@{1}: WIP on master: c264051 Revert "added file_size"
stash@{2}: WIP on master: 21d80a5 added number to log
$ git stash drop stash@{0}
Dropped stash@{0} (364e91f3f268f0900bc3ee613f9f733e82aaed43)
7、移除stash 的增强命令 使用git stash clear命令,删除所有缓存的stash。
最新文章
- 使用tomact监控应用服务器的性能
- Loader加载器
- 线段树(多维+双成段更新) UVA 11992 Fast Matrix Operations
- RPI学习--环境搭建_刷卡+wiringPi库安装
- Github 访问时出现Permission denied (public key)
- pcap filter
- 微信小程序实现按首字母检索城市列表
- 【Darwin】 越狱后玩耍IPhone系统
- Bubble Cup X - Finals [Online Mirror]
- 导航栏动态添加act属性
- Vue element 分页
- 【持续更新】 | OpenCV 学习笔记
- JFace下ApplicationWindow关闭窗口时结束进程
- jQuery-Load方法
- 具体解释Ajax技术
- ios block常见的错误(三)——并发编程的block引用
- android 签名验证防止重打包
- 利用kali嗅探周围发送的短信
- day3-exercise
- Oracle Secure Backup设置Infiniband网络优先