写点什么

linux 之 git 高级命令

作者:入门小站
  • 2021 年 11 月 10 日
  • 本文字数:696 字

    阅读完需:约 2 分钟

合并分支

我在 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

微信公众号:入门小站

发布于: 18 小时前阅读数: 4
用户头像

入门小站

关注

还未添加个人签名 2020.01.18 加入

还未添加个人简介

评论

发布
暂无评论
linux之git高级命令