git修改之前某一次的commit

一.git commit --amend

如果你对文件做了修改需要和上一次的修改合并为一个change

  1. git add .

  2. git commit --amend

如果你只是想修改上一次change的commt

  1. git commit --amend

二.git rebase -i HEAD~n

什么是git rebase --interactive (-i)

他会打开编辑器列出最近的几次change(从old -> new),并且左边包含可以进行的操作,如下图

在commands里面包括了几个命令,简单介绍下

第一个 r : use commit, but edit the commit message 修改commit message

保存退出后:

保存退出后对应change的message就修改成功了

第二个 edit : use commit, but stop for amending

保存退出后:

之后做的修改会基于这个commit,在

git add .

git commit --amend后会修改你刚才选中的change,修改完成后 git rebase --continue 回到最初的状态

第三个 squash use commit, but meld into previous commit ,将这个change合并到上一次change中,并且会保留这个change的message

第四个 fixup 和squash一样,但是不会保留change的message

第五个 不知道

时间: 2024-10-07 09:55:46

git修改之前某一次的commit的相关文章

git分支合并、撤销;git修改已push的commit信息; git 撤销操作;

git分支合并 1.分支代码提交 2.git branch 查询本地分支 3.git checkout 分支名1 切换分支到需要合并的分支上 4.git merge 分支名2  //选择要合并到 分支名1 的分支名2 eg: 如果develop_screen分支合并到develop分支上,这个时候切换到develop分支上, git merge develop_screen 5.合并之后可能会有冲突,可用git status 查看冲突代码 <<<<<<<  ===

配合Git修改PS1

1.export PS1='\[email protected]\h:\[\033[1;34m\]\w\[\033[0;33m\]$(git branch 2> /dev/null | sed -e '/^[^*]/d' -e "s/* \(.*\)/[\1$([[ $(git status 2> /dev/null | tail -n1) != "nothing to commit, working directory clean" ]] &&

[Git] Rebase - 使用 Interactive 模式来精简 commit 纪录

避免过多 commit 纪录造成线图繁杂 透过 Rebase Interactive Mode?来将 commit log 进行精简 前言 在开发的过程中,会随着各种原因将代码提交至 local repository 中,并且在完成最终功能的开发后,会将 local 的变动 push 到 remote repository 中:此时为了避免过多无特别意义的 commit 纪录造成线图的繁杂,因此会透过各种方式来将 commit log 进行精简,其中处理方式多为 git reset 或 git

git 修改作者信息的方法

git 修改作者信息的方法 单个仓库里个人信息 git config user.name "姓名" git config user.email "邮箱" 推荐使用全局用户信息: git config --global user.name "姓名" git config --global user.email "邮箱" 原文地址:https://www.cnblogs.com/cag2050/p/9870408.html

git修改远程仓库地址

问:Coding远程仓库地址变了,本地git仓库地址如何更新为最新地址 git修改远程仓库地址 方法有三种: 1.修改命令 git remote origin set-url [url] 2.先删后加 git remote rm origingit remote add origin [url] 3.直接修改config文件 git 远程仓库管理 要参与任何一个 Git 项目的协作,必须要了解该如何管理远程仓库.远程仓库是指托管在网络上的项目仓库,可能会有好多个,其中有些你只能读,另外有些可以写

git reset 之后切换到原来的commit

git reset的语法: git reset [--hard|soft|mixed|merge|keep] [<commit>或HEAD] 作用:将当前分支reset到指定的commit或者HEAD(默认为最新的一次提交,即重设到最新一次提交之前的版本) 那使用git reset命令之后,想回到以前怎么处理呢? 第一种方法: git reflog git reset --hard commitid 第二种方法: git reflog git checkout commitid git reb

git 修改最后一次提交的用户名 或者 commit的内容

修改git最后一次提交的命令 $ git commit --amend 修改git最后一次提交用户名的相关命令 git config user.name 'wangz' git config user.email 'wangz@alib.com' git commit --amend --author=wangz 修改最后一次提交内容的相关文档 $ git commit --amend --help usage: git commit [options] [--] <pathspec>...

git修改已提交commit的内容

假设我们需要修改倒数第三个commit的内容 1.首先调用`git rebase` git rebase -i HEAD~3 此时会产生如下的提交列表 pick f7f3f6d changed my name a bit pick 310154e updated README formatting and added blame pick a5f4a0d added cat-file # Rebase 710f0f8..a5f4a0d onto 710f0f8 # # Commands: # p

git切换到别的分支,要暂时保存当前分支的修改(不想进行add 和commit)的方法 git stash

git 切换分支时会把未add或未commit的内容带过去, 这一点值得注意. 为什么呢? 因为未add的内容不属于任何一个分支, 未commit的内容也不属于任何一个分支. 也就是说,对于所有分支而言, 工作区和暂存区是公共的. 要想在分支间切换, 又不想又上述影响, 怎么办呢? git切换分支保存修改的代码的方法 最近在一个原有的项目上做一次非常大的改版,底层的数据库做了很大的变化,跟现在的版本无法兼容.现在的工作除了开发最新的版本之外还要对原来的版本做例行的维护,修修补补.于是有了在两个分