当前位置:   article > 正文

git stash命令的使用(git stash基本使用) git 常用命令

git stash命令

git命令相关

不同场景下git命令的使用(记一下比较容易忘记的):

1.本地没有dev分支,需要拉取远程的dev分支
git checkout -b dev origin/dev
  • 1

很多人本地没有dev分支,直接使用git checkout -b dev来拉取,这样肯定是不对的。

但是如果直接使用git checkout dev来拉取远程的,可行吗?(结论是可行的,当远程和有和本地上的一样的分支名,等同于git checkout -b dev origin/dev这个命令)
参考地址:https://www.jianshu.com/p/bba854fe2b29

2.在自己的分支工作,没做完又不想提交代码,此时又需要切换到dev分支修复bug

使用git stash命令

a.存储(这样子只能存储已有文件的改动,如果你有新增文件,那么需要先git add .提交到暂存区,再进行git stash)

 git stash save "save message" : 执行存储时,添加备注,方便查找,只用git stash 可以存储修改,但查找时不方便识别。 
  • 1
git stash save -a "save message"  :有新增文件的情况下使用
  • 1

b. 查看自己分支上存储了哪些改动

git stash list
  • 1

c. 恢复自己的缓存, 并将缓存堆栈中的对应stash删除 (使用这个命令默认恢复第一个缓存,等同于 git stash pop stash@{0} )

git stash pop stash@{num}
  • 1

d.恢复指定缓存,并将缓存堆栈中的对应stash删除(用的多,毕竟大家都是恢复指定的缓存,并且不需要在git stash list中有这个记录了

git stash pop stash@{num}
  • 1

e. 删除所有缓存的stash

git stash clear
  • 1

f.删除指定缓存

git stash drop stash@{num}
  • 1

g.使用指令“git stash apply stash@{id}”,恢复指定id的stash内容,同时不会删除恢复的缓存条目。

git stash apply stash@{id}
  • 1
3.使用git pull会产生Merge branch ‘refactor_relationship’ of… 这种不好看的代码提交记录

使用git pull --rebase 解决。

该问题场景产生于:和同事在同一分支开发,自己开发完了直接git push时git会提示你先git pull一次。

4.冲突解决

有冲突时git会显示有冲突的状态(MERGING),此时直接打开vscode,去解决冲突,主要要记住的是第一个是采用当前更改(自己的),第二个为采用传入的更改(别人的)

5.功能分支从dev分支拉出来太久了,dev代码更新了之后,功能分支还没更新

此时应该在功能分支上使用git merge dev来保持代码的统一,然后功能分支开发测试完毕之后再合并回dev分支。

6.分支修改名字

1:还没有推送到远程的本地分支重命名
      git branch -m oldName newName
2:已经推送到远程的分支重命名
      (1):重命名本地分支 git branch -m oldName newName
      (2):删除远程分支 git push --delete origin oldName
      (3):上传新命名的本地分支 git push origin newName
参考网址:https://www.cnblogs.com/yixiongqiang/p/13750843.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/590581
推荐阅读
相关标签
  

闽ICP备14008679号