git开发常用命令

版本回退

soft:git reset --soft HEAD^

将版本库回退一个版本,且这次提交的所有文件都移动到暂存区

mixed(默认):git reset HEAD^

将版本库回退一个版本,且这次提交的所有文件都移动到工作区,会重置暂存区

hard:git reset --hard HEAD^

将版本库回退一个版本,会重置暂存区,工作区会回退到这个版本,即之前提交修改的文件不会存在

生成新的分支

git checkout develop

git branch -a q退出

git merge 3.0.10_20211120_BETA

git status

git push

删除本地分支

git branch -d 3.1.0_20211210_BETA

复制且创建本地分支

git checkout -b 4.2.0_20220630_BETA

创建远程分支

git push --set-upstream origin 4.2.0_20220630_BETA

删除远程分支

git push origin --delete Chapater6

删除本地分支

4.1.0_20220615_BETA

列举所有远程分支:git branch -a

git cherry-pick 合并某些提交到某个分支

webstorm,点击log显示所有commit,点cherry-pick,合并到当前分支

git merge dev

将dev的分支合并到当前分支

git pull = git fetch + git merge FETCH_HEAD

git pull --rebase = git fetch + git rebase FETCH_HEAD

二者对比可知,rebase没有产生新的节点,使用rebase的git演进路线(提交树)是一直向前的,这样在版本回退时也很容易,用merge的git路线是跳跃的,如果版本回退你也找不到自己想要的版本,如果在merge时出现了冲突那就麻烦了,当前merge就不能继续进行下去,需要手动修改冲突内容后,add,commit, push. 而rebase 操作的话,会中断rebase,同时会提示去解决冲突。解决冲突后, 再执行 git rebase --continue 继续操作,再push.

相关推荐
guwentian2 小时前
Git Worktree 实战:用并行多 Agent 把开发提速 N 倍
大数据·git·elasticsearch·wroktree
不吃鱼的羊6 小时前
Git识别未修改的文件有修改
git
蓝黑墨水8 小时前
一个git问题的处理
git
互联网中的一颗神经元11 小时前
21 — 额外命令:同时开两个窗口、自动检查哨
git
_道隐_13 小时前
git stash save 和 git stash push有什么区别?
git
_道隐_16 小时前
git stash如何pop指定的stash change?
git
PC2005-cloud18 小时前
Git学习笔记:GitHub Git Data API 完全指南,用 Go 操控 Git 底层对象
笔记·git·学习
Python私教1 天前
AI 并行编码的 Worktree 生命周期:创建、隔离与安全回收
人工智能·git
互联网中的一颗神经元1 天前
16 — 改写历史 rebase:搬家到新楼层,不是合并
git
互联网中的一颗神经元2 天前
19 — 贮藏与清理:stash 是抽屉,gc 是打包箱
git