最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • 放弃提交到远程发现最近一个已经提交的内容(commit)

    正文概述 掘金(zaco)   2021-03-01   845

    git log

    查看提交的历史 相关参数:

    参数效果
    p按补丁格式显示每个提交引入的差异。stat显示每次提交的文件修改统计信息。shortstat只显示 --stat 中最后的行数修改添加移除统计。name-only仅在提交信息后显示已修改的文件清单。name-status显示新增、修改、删除的文件清单。abbrev-commit仅显示 SHA-1 校验和所有 40 个字符中的前几个字符。relative-date使用较短的相对时间而不是完整格式显示日期(比如“2 weeks ago”)。graph在日志旁以 ASCII 图形显示分支与合并历史。pretty使用其他格式显示历史提交信息。可用的选项包括 oneline、short、full、fuller 和 format(用来定义自己的格式)。onelinepretty=oneline --abbrev-commit 合用的简写。*

    注意

    如何退出 git log

    =>英文状态下按Q 放弃提交到远程发现最近一个已经提交的内容(commit)

    git revert

    git reset

    git revert命令的效果类似于reset,但其方法不同。 通常,reset的做法是移动分支指针到commit链其他位置,进而实现撤销更改。revert命令会在链的末尾添加新的提交以“取消”更改。

    git rebase(变基)

    rebase操作可以把本地未push的分叉提交历史整理成直线;

    rebase的目的是使得我们在查看历史提交的变化时更容易,因为分叉的提交需要三方对比。

    放弃提交到远程发现最近一个已经提交的内容

    方法1:git rebase -i 倒数第二个commitid 然后 git push origin 分支名 -f (分支代码落后于远程,需要强制提交)(提交记录,提交内容都被去掉了)

    提示:此方法需要vim操作命令窗口(输入i进入编辑模式, 将需要删除版本之前的pick 修改为drop或者d,删除该记录,然后按下ESC,输入:wq保存并退出,此时查看git log 发现最近的commit已经被删除)

    方法2 git reset --hard HEAD~ 然后 git push origin 分支名 -f (分支代码落后于远程,需要强制提交)

    方法3 git revert 最近的commitid 然后 git push origin 分支名 (提交记录仍然存在,提交内容被去掉了)

    现在这里有三个测试提交,现在的需求就是去掉“第三个测试提交”

    第一次修改内容

    变更了“下载数据明细” => "下载数据明细111" 放弃提交到远程发现最近一个已经提交的内容(commit)

    第二次修改内容

    多复制了两行内容 放弃提交到远程发现最近一个已经提交的内容(commit)

    第三次修改内容

    删除了一行数据 放弃提交到远程发现最近一个已经提交的内容(commit) 查看日志 放弃提交到远程发现最近一个已经提交的内容(commit)

    方法1 git rebase
    git rebase -i 9e7f6f52041d989ef44ba12c750ba9185630cc8b
    

    在git rebase中输入VIM时如何开始输入?

    参考连接1:在git rebase中输入VIM时如何开始输入? 参考链接:git rebase 的作用 git删除中间某次提交

    方法2采用git reset回退到第二次提交的位置
    执行代码
    git reset --hard 9e7f6f52041d989ef44ba12c750ba9185630cc8b
    
     git push origin product-zy -f
    

    放弃提交到远程发现最近一个已经提交的内容(commit)

    得到的代码结果

    放弃提交到远程发现最近一个已经提交的内容(commit) 这个时候我们已经回退到了“第三个测试提交”之前的内容

    查看git log时间线

    放弃提交到远程发现最近一个已经提交的内容(commit)

    方法3 采用git revet

    重新提供更改四的commit 放弃提交到远程发现最近一个已经提交的内容(commit) 更改的代码区域: 放弃提交到远程发现最近一个已经提交的内容(commit)

    这个时候会发现代码多了新的更改记录,更改四的代码记录被回退

    放弃提交到远程发现最近一个已经提交的内容(commit)

    放弃提交到远程发现最近一个已经提交的内容(commit) 可以看到新增了一条revert的记录并且显示修改4的commit信息还在 放弃提交到远程发现最近一个已经提交的内容(commit)

    扩展:

    如果我们需要回退到一个并不是当前最近的一次更改,与当前的版本之间间隔着几个历史记录,并且之间的这些历史记录需要保存,我们改如何处理。 如图:提交记录为 A-B-C,想要干掉B,还可以用 git rebase --onto A B C 放弃提交到远程发现最近一个已经提交的内容(commit)

    1.尝试git rebase

    新增一个更改5,然后我们的目标是保留除了更改2之外的所有记录 放弃提交到远程发现最近一个已经提交的内容(commit) 也就是去掉更改2的代码 放弃提交到远程发现最近一个已经提交的内容(commit)

    命令行(暂时为解决)

    git rebase -i 9d30a942d64140072a888e308f880c25030d5d08
    

    执行产生了冲突这里需要解决 放弃提交到远程发现最近一个已经提交的内容(commit) 这一步的操作原理可以参考: Git 实用操作:撤销 Commit 提交(动图讲解)

    总结

    rebaserevertreset
    提交记录去掉存在且新增一个revert的修改回退commit,默认方式.提交内容去掉去掉保留源码,默认方式.

    以上如有不对欢迎指正


    起源地下载网 » 放弃提交到远程发现最近一个已经提交的内容(commit)

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元