Git–commit提交压缩

第一种:通过编辑器IDE(亲测)

我使用的是idea,通过idea进行commit压缩。
第一步: 选择当前分支,然后查看版本控制(Version Control),展示出提交记录,比如,我在图中标注的七条提交记录,通过commit-message 可以清晰的看出来,1-2、3-4是同一类或者相同的提交。
第二步: 想压缩1-2的提交,可以右击1 提交,弹出功能框,如图二展示。
在这里插入图片描述
在这里插入图片描述
选择红框的选项(从当前位置开始进行Rebase)。
第三步: 点击该功能,弹出可进行压缩的commits.如图所示:
在这里插入图片描述

#功能解释
# p, pick = use commit
# r, reword = use commit, but edit the commit message
# e, edit = use commit, but stop for amending
# s, squash = use commit, but meld into previous commit
# f, fixup = like "squash", but discard this commit's log message

第四步: 其中可选择功能,我们使用squash,基commit是pick,往下可选择为squash(使用提交,但合并到上一个提交中),所以要合并的commit之间不可有间隔commit,会导致混乱。
第五步: 添加新的commit-message。
在这里插入图片描述
第六步: 当需要压缩的commit 按照以上步骤完成之后,可以进行push,如果有,冲突,先进性merge再进行push.

注意: 在进行Rebase时,应避免 git fetch 合并代码操作,否则会导致之前的commit还会存在。如果发生这种情况,可通过在你想要压缩的第一个commit前一个提交,创建一个新的分支(Branch),在新分支上进行远程代码合并,合并完成之后,再把自己之前的提交进行 cherry-pick,然后再进行 Rebase

第二种:通过命令行(未使用)

第一步: 通过命令 git log 查看提交记录
在这里插入图片描述
第二步: 执行变基git rebase -i HEAD~<num> 或 git rebase -i <commit>
其中 num :是指从头部开始追溯n条记录; commit :是指 提交记录code,变基提交所在commit。
在这里插入图片描述
第三步: 执行命令之后进入到编辑模式,通过修改commit 中的动作,进行压缩。把 需要合并的pick改成squash

# Commands:
# p, pick = use commit
# r, reword = use commit, but edit the commit message
# e, edit = use commit, but stop for amending
# s, squash = use commit, but meld into previous commit
# f, fixup = like "squash", but discard this commit's log message
# x, exec = run command (the rest of the line) using shell
# d, drop = remove commit

然后进行保存。push 之前,如果有冲突,先结解决冲突。

# 取消变基:
git rebase --abort
# 如果没有冲突打断变基的话,不用执行continue
git rebase --continue
# 操作完git push 后,会看到压缩情况的信息
git push -f origin branch_name
                    Git–commit提交压缩第一种:通过编辑器IDE(亲测)我使用的是idea,通过idea进行commit压缩。第一步: 选择当前分支,然后查看版本控制(Version Control),展示出提交记录,比如,我在图中标注的七条提交记录,通过commit-message 可以清晰的看出来,1-2、3-4是同一类或者相同的提交。第二步: 想压缩1-2的提交,可以右击1 提交,弹出功能框,如图二展示。选择红框的选项(从当前位置开始进行Rebase)。第三步: 点击该功能,弹出可进行压缩的com
				
今天同事突然问我,由于在给老大的开源项目提 pr 的时候,自己比较长时间没有 rebase 的老大的项目 master 分支了,而自己提交commit 又很多,有些 commit 又是实验性质的,乱七八糟的(其实就是没有用熟 git…),还有不少和老大的代码冲突了。提交代码的时候,老大要求精简一下 commit 否则其他人在看项目的演进的时候会一头雾水的。 我认为老大说的是对的,当然也存在一个...
第二步: 执行变基git rebase -i HEAD~<num> 或 git rebase -i <commit> 其中 num :是指从头部开始追溯n条记录; commit :是指 提交记录code,变基提交所在commit。 第三步: 执行命令之后进入到编辑模式,通过修改commit 中的动作,进行压缩。把 需要合并的pick改成squash 然后进行保存。push 之前,如果有冲突,先结解决冲突。
git进行项目版本管理时,经常会遇到如下的场景, 开发者针对feature/bugfix/ hotfix/refactoring进行开发时,在本地repo中进行了很多次commits,然而当当前开发结束时,开发者并不需要把所有的commits 都push 到远程git server 中,开发者可以选择需要的commits压缩成一个commit, 然后push 这一个commit到远程git server 即可。具体的步骤如下: 使用git log 列出当前的commit history, 比如说
how to squash several commits into single one. ( git rebase -i http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html​ in comments, some one also mentioned how to divide one la
我使用 `git` 有一段时间了,但老实说,我很少关注凌乱的提交历史。最近在学习 `git rebase` ,想分享一下如何使用这个命令来压缩整理提交(Commits) 简而言之,总共有五个步骤。 1. 运行`git rebase -i head~x`→ `x` 是需要从头开始压缩的数目,`-i` 表示交互模式 2. 按 `i` 进入`vim`的`INSERT`的输入模式 3. 将`pick`更改为 `fixup` 或 `f` 4. 按 `ESC` 退出 `INSERT` 模
Git 提供了 `git rebase` 命令可以用来压缩提交次数。具体操作步骤如下: 1. 使用 `git log` 命令查看当前分支的提交记录,并找到需要压缩提交记录的哈希值。 2. 执行 `git rebase -i <commit>` 命令,其中 `<commit>` 为需要压缩提交记录的哈希值。例如,如果需要压缩最近的三次提交,可以执行 `git rebase -i HEAD~3`。 3. Git 会打开编辑器,并展示需要压缩提交记录信息。将需要压缩提交记录前面的单词改为 `squash` 或 `fixup`,表示将该提交记录压缩到前一个提交记录中。其中,`squash` 表示将该提交记录的修改内容合并到前一个提交记录中,同时保留该提交记录的提交信息;`fixup` 表示将该提交记录的修改内容合并到前一个提交记录中,同时忽略该提交记录的提交信息。 4. 保存并关闭编辑器,Git 会自动执行压缩提交操作,并在执行过程中可能会提示需要解决冲突等问题。最后,执行 `git log` 命令可以查看压缩后的提交记录。
Spring Cloud Eureka 自我保护机制(EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY) #!/bin/bash echo "======== start clean docker containers logs ========" logs=$(find /var/lib/docker/containers/ -name *-json.log) for log in $logs fileSizeByte=$(wc -c $log |awk '{print $1}') ((fileSizeKB=$fileSizeByte/1024)) echo "clean logs :$fileSizeByte Bytes $fileSizeKB KB - $log" cat /dev/null > $log echo "======== end clean docker containers logs ========" [/code] 优化了下,输出日志文件大小
亲测有效:docker清理Overlay2占用磁盘空间 DHclly: 正遇到,又不知道该删啥文件,删除日志文件刚刚好,刚删了个6g的日志文件。。。表情包 tomcat启动项目异常Failed to initialize component [org.apache.catalina.webresources.JarResourceSet k8s集群某个节点重启之后,不能使用 tab 键,docker启动失败