linux之git高级命令
【摘要】 合并分支我在dev分支来rebase master分支,那么我这个dev分支就是基于master分支的一个新的节点> git checkout dev> git rebase master 合并提交合并这次与上次提交> git rebase -i HEAD~2 解决远程仓库fast-forward当我们提交代码时,可能别人已经提交过内容到远程仓库了,这时我们提交代码时就会提醒我们fast-...
合并分支
我在dev分支来rebase master分支,那么我这个dev分支就是基于master分支的一个新的节点
> git checkout dev
> git rebase master
合并提交
合并这次与上次提交
> git rebase -i HEAD~2
解决远程仓库fast-forward
当我们提交代码时,可能别人已经提交过内容到远程仓库了,这时我们提交代码时就会提醒我们fast-forward,让我们先更新下代码再提交,我们可以用rebase很快的解决这个问题。
//先拉取最新代码进行rebase
> git pull --rebase origin master
// 然后再提交
> git push
本地分支与远程分支关联
将本地dev分支与远程master分支关联,这样可以在master分支中直接执行git pull进行拉取代码,不用再指定后面的分支
> git branch --set-upstream-to=origin/master dev
代码合并
// 切换到master分支
> git checkout master
// 融合dev分支的内容
> git merge dev
放弃本次提交的修改
c123是通过git log进行查看的 commit id
> git checkout c123
回到此分支的上一个提交
> git reset HEAD^
回到master分支的上一个提交
> git reset master^
撤销远程分支上的内容
如果想撤销远程分支上的内容需要使用git revert,它会新创建一个提交,而新创建的提交的状态正好等于你上一个版本的状态,假如我们现在的版本是c2,它上一个版本就是c1,那么执行完这个命令之后,就会新创建一个提交 为 c1’,它与c1的内容一致,我们将这它推送到远程端,别人更新之后就可以了
> git revert HEAD^
做个锚点
因为分支是很容易被改变,为了防止以后不能返回,所以可以打个tag,做个回滚记录点.
c123 为提交记录的id
> git tag MyTagName c123
原文链接:https://rumenz.com/rumenbiji/linux-git-advanced.html
微信公众号:入门小站
- 回复【1001】获取 linux常用命令速查手册
- 回复【10010】获取 阿里云ECS运维Linux系统诊断
- 回复【10012】获取 Linux学习笔记【强悍总结值得一看】
- 回复【10013】获取 shell简明教程
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)