精华内容
下载资源
问答
  • git删除提交记录

    千次阅读 2020-12-01 19:23:45
    这个时候就要把已提交的代码删除掉,具体步骤如下: 1、选择需要保留的提交删除后面提交记录。选择需要保留的提交记录,将代码重置到此次提交 2、选择强行合并 3、打开终端,输入git push --force origin ...

    git管理中,经常遇到有些提交的代码,错误提交,不想要了,或者有时候代码提交了,突然接到通知,代码不让上线。这个时候就要把已提交的代码删除掉,具体步骤如下:

    1、选择需要保留的提交,删除后面提交记录。选择需要保留的提交记录,将代码重置到此次提交

    2、选择强行合并

    3、打开终端,输入 git push --force origin xxxxxx(xxxxx为分支名称)

    4、再重新pull代码,就会发现该提交后面的记录都删掉了,远程分支也删掉了

     

     

    展开全文
  • Git使用小结git教程推荐删除历史提交log记录(合并提交)情景如下操作步骤修改历史提交消息删除历史提交修改所有提交的邮箱地址从所有提交删除一个文件 git教程推荐 折腾git,被git折腾,还是保持够用就好的原则

    git教程推荐

    折腾git,被git折腾,还是保持够用就好的原则?

    https://backlog.com/git-tutorial/cn/stepup/stepup7_1.html

    https://git-scm.com/book/zh/v2

    http://gitbook.liuhui998.com/index.html

    以下情景都属于改写提交

    基本都是基于git rebase命令

    删除历史提交log记录(合并提交)

    情景如下

    在这里插入图片描述

    操作步骤

    回到第一次提交commit 1请使用git rebase -i --root master

    1 . git rebase -i到commit 2的上一次提交commit 1

    git rebase -i 5a25878
    # 执行完毕会弹出编辑器
    

    2 . 修改commit 3 pick命令为squash, 和commit2 合并(squash命令: use commit, but meld into previous commit/使用提交,但合并进先前的提交)

    # 编辑前内容
    pick 8a98f84 commit 2, add 2.txt
    pick 5d2b9ba commit 3, add 3.txt
    pick 0768163 commit 4, add 4.txt
    pick 22e45ec commit 5, add 5.txt
    
    # Rebase 5a25878..22e45ec onto 5a25878 (4 command(s))
    #
    # 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
    #
    
    
    # 编辑后内容
    pick 8a98f84 commit 2, add 2.txt
    # 修改了改行
    squash 5d2b9ba commit 3, add 3.txt
    pick 0768163 commit 4, add 4.txt
    pick 22e45ec commit 5, add 5.txt
    
    
    

    3 . 保存上一步文本内容, 会弹出编辑器提示修改两次合并后的消息内容, 删除 commit 2的消息, commit 3不变, 然后保存

    在这里插入图片描述

    效果如下,仅删除了提交记录log,文件内容保持不变

    在这里插入图片描述

    修改历史提交消息

    修改最近一次提交信息

    git commit --amend
    # 修改保存即可
    

    在这里插入图片描述

    修改以前的提交信息

    回到第一次提交commit 1请使用git rebase -i --root master

    # git rebase -i 要修改的commit的上一级commit id
    # 使用reword命令
    # 22e45ec commit 5, add 5.txt
    # 0768163 commit 4, add 4.txt
    # 5d2b9ba commit 3, add 3.txt
    # 8a98f84 commit 2, add 2.txt
    # 5a25878 commit 1, add 1.txt
    # 以修改commit 2为例, 先rebase到commit 2的上一级commit 1
    git rebase -i 5a25878
    # 修改commit 2的rebase命令pick为reword
    # 保存,弹出编辑器提示修改提交信息,修改为要更正的信息保存即可
    

    在这里插入图片描述

    删除历史提交

    回到第一次提交commit 1请使用git rebase -i --root master

    无冲突

    • git rebase -i 要修改的commit的上一级commit id
    • 使用drop命令应用到commit 2

    在这里插入图片描述

    有冲突

    情景

    需要删除commit 2提交,但commit 6依赖2.txt, 而 commit 2创建的2.txt

    在这里插入图片描述

    • git rebase -i 要修改的commit的上一级commit id
    • 使用drop命令应用到commit 2
    leo@demo:~/tutorial$ git rebase -i 5a25878
    error: could not apply cb75f2e... commit 6, 修改了2.txt
    
    When you have resolved this problem, run "git rebase --continue".
    If you prefer to skip this patch, run "git rebase --skip" instead.
    To check out the original branch and stop rebasing, run "git rebase --abort".
    Could not apply cb75f2ecf6ab2d837a61bd95531b306ed22258d8... commit 6, 修改了2.txt
    
    # git rebase 执行" pick cb75f2e commit 6, 修改了2.txt "检测到与"删除commit 2"有冲突,需要手动解决冲突后才能继续进行
    
    • 修改完冲突后git add 冲突的文件/ git add . 然后git rebase --continue提交。(本例中冲突处理是, 保留2.txt和commit 6修改的内容,然后提交)

    在这里插入图片描述

    修改所有提交的邮箱地址

    git filter-branch -f --commit-filter '
    	if [ "$GIT_AUTHOR_EMAIL" = "qianxunlan@qq.com" ];
        then
        	GIT_AUTHOR_NAME="leo2";
            GIT_AUTHOR_EMAIL="leo2@qq.com";
            git commit-tree "$@";
        else
        	git commit-tree "$@";
        fi' HEAD
    

    在这里插入图片描述

    # 可以限定范围commit xx到当前head执行替换操作
    git filter-branch -f --commit-filter '....command' 5a258787..HEAD
    # 但是如何限定范围commit xx 到中间的某个commit xx而不是HEAD如何实现不清楚
    

    从所有提交中删除一个文件

    
     git filter-branch --tree-filter 'rm -f passwords.txt' HEAD
    
    展开全文
  • github 删除提交

    千次阅读 2017-08-10 17:49:52
    删除 commit,重置到某个 commit
    删除 commit,重置到某个 commit
    
    确保当前分支为主分支 master
    
    // 本地新建一个分支 old_master
    1. git branch old_master
    
    // 推送本地的当前分支到远程的 old_master 分支 --> 远程不存在会自动新建 old_master 分支
    2. git push origin old_master
    
    // 本地当前分支回退到指定提交 --> xxx 为 commit 的 SHA 值
    3. git reset --hard xxxxx
    
    4. 操作远程,修改默认分支为 old_master。即主分支修改为 old_master
    
    // 删除远程的 master 分支。master 已经不是主分支了
    5. git push origin --delete master
    
    // 推送本地当前分支到远程 master 分支 --> 远程不存在会自动新建 master 分支
    6. git push origin master
    
    7. 操作远程,修改默认分支为 master 。即主分支修改为 master
    
    // 删除远程 old_master 分支。old_master 已经不是主分支了
    8. git push origin --delete old_master
    
    展开全文
  • github删除提交历史

    千次阅读 2018-02-26 19:27:10
    删除git的提交历史直接删除.git文件再初始化仓库也是可以的,但有可能回导致git储存库出现问题,所以我喜欢采用第二种方式。即新建一个分支,把代码传到新分支上,删除老分支,再把新分支重命名为老分支,就完美解决...
    删除git的提交历史直接删除.git文件再初始化仓库也是可以的,但有可能回导致git储存库出现问题,所以我喜欢采用第二种方式。

    即新建一个分支,把代码传到新分支上,删除老分支,再把新分支重命名为老分支,就完美解决了此问题。二种代码如下:

    一:

    先删除.git文件

    
    

    git init git remote add origin git@github.com:user/repo

    现在提交当前版本的代码:

    
    

    git add * git commit -am 'message'

    最后,强制更新到GitHub:

    
    

    git push -f origin master


    二:

    1. 尝试 运行 git checkout --orphan latest_branch
    2. 添加所有文件git add -A
    3. 提交更改git commit -am "commit message"
    4. 删除分支git branch -D master
    5. 将当前分支重命名git branch -m master
    6. 最后,强制更新存储库。git push -f origin master

    展开全文
  • Git 删除提交

    千次阅读 2014-01-08 11:03:05
    1. git rebase -i HEAD~n(n表示到最近的一个要扔到的提交的距离) 修改哪个就把哪一个commit 的pick 改成edit 2. git reset --hard HEAD~N(N表示扔掉提交次数) 3. git rebase --continue 4. git push -f origin $...
  • 一、删除已经提交到github上的缓存文件 1.先从github上拉取 git pull 2.删除本地缓存 git rm -r --cached target 3.push到github git push origin master 4.修改.gitignore文件,添加要过滤的文件夹或文件类型 ...
  • 问题: 有时候误操作了大文件,推送到本地仓库却无法提交到远程仓库(报错) 方法1,删除本地仓库中的大文件 查看仓库里有哪些文件夹 ...删除python文件夹(这里的...从commit的提交历史中删除指定文件 git f...
  • 在使用 git 工作时, 难免会出现 commit 了一些不想提交的内容, 或者 commit 的时候 commit 的日志不太满意想要进行修改。 分两种情况一种是针对 commit 之后没有进行 push. 另一种则是 commit 之后 push 到了 remote...
  • svn删除提交版本方法

    万次阅读 2012-03-09 19:25:43
    情景说明:当我们使用svn提交一个版本后,发现提交有问题,想删除,本文讲解其操作过程。 目的:删除svn R3版本 查看当前的版本库信息: admini@stb-server:~/hisi_toolchain$ svn log ---------------...
  • 1、可采用默认回滚到之前一个未删除该文件的版本上 # git reset commit-id 注:默认回滚后的版本,其修改的代码部分可在已有的代码文件中找到,但是已删除的文件在相应的目录下是找不到的,它存在 于暂存区 2、...
  • Android Studio SVN 无法提交删除

    千次阅读 2015-02-05 10:34:43
    接触AS不久,今天遇到本地SVN删除文件后,在commit的时候不显示删除内容; 对仅仅删除某个文件后,点...折腾半天,发现在changes里面有Locally Deleted Files ,需要在这里Remove from VCS,提交后才能将删除提交到SVN;
  • 【转】Git删除commit提交的log记录

    千次阅读 2019-10-01 00:21:49
    基于 GitFlow 工作流,可能某个提交(commit)导致了 bug,或者有多个提交需要返工,此时你就会用到删除提交。 接下来的内容都基于下面这张 git log 提交记录图来写。 git log 删除最后的提交 当需要删除最新...
  • Git删除本地任意提交记录的方法

    万次阅读 2019-07-12 11:54:28
    使用git管理代码版本时,有时需要删除一些本地错误提交的记录,如果待删除记录是最后一条...但生活往往不会太过于简单,有时我们会需要删除提交记录中的某几条,例如,使用git log命令查看得到的提交记录如下: ...
  • GIT 删除指定COMMIT提交

    万次阅读 2017-12-08 20:33:22
    找到要删除提交 Id ( 简写为 Id-a) 之前一次 提交的 Id (简写为 Id-b); 2.git rebase -i Id-b 表示回退到之前的版本,并在之后会提交需要的所有提交。 3.删除删除提交(skip 变成 drop 或者 删除想要删除...
  • git删除远程提交记录

    万次阅读 2018-03-20 15:12:23
    需要删除本地commit,并同步到服务器,使用git revert可以删除某一次提交,并为本次删除生成一个新的提交。也就是说不是把之前的提交记录抹去,在提交记录中还是能看到之前的提交,并且有一个新的revert提交,把之前...
  • Git彻底删除一次提交

    千次阅读 2019-04-12 11:36:30
    最近项目遇到了点麻烦,提交了一次错误的commit,如何防止别人回滚到此次提交,也不让这次提交...例如,我要删除yy这次提交,那我的SHA就是cbe8527,那我的命令就是git rebase --onto cbe8527^ cbe8527 现在我们再来...
  • Git删除某次提交

    千次阅读 2019-11-09 22:38:50
    Git删除某次提交是一件比较难处理的事情,尤其是在两个开发者修改了同一个文件的情况下。本文假设在两个开发者没有修改同一个文件的情况下,总结如何删除其中一个开发者所提交的内容。 假设当前的提交记录是这样的...
  • 由于误操作,将错误的代码提交到了svn上,想在服务器上删除提交的版本(可以是多个版本),操作如下: 1 首先找到提交后生成的版本号,如47或者46、47 2.登录到svn服务器上,进入到项目的svn目录;或者找到本地...
  • js代码实现提交评论删除评论

    千次阅读 2019-04-17 20:23:04
    提交评论删除评论的js代码如下: 运行结果如图所示,在输入框输入文字点击提交后评论内容会提交到上方的 li 中,当点击删除的时候会删除内容所在的整个 li ...
  • Github彻底删除历史提交记录的方法

    千次阅读 2020-03-24 09:32:03
    有时候我们不小心会将本地敏感的信息提交到github上,即使删除后在历史记录中任然能够查看到,这让人很很不淡定,那有什么办法能够彻底的删除这些历史记录吗?方法总是有的,如下操作。 1.查看git提交历史记录 git ...
  • SourceTree 回退到某个提交commit,删除某个提交commit

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 703,802
精华内容 281,520
关键字:

删除提交