相关疑难解决方法(0)

如何修改指定的提交?

我通常会提交一份提交列表以供审核.如果我有以下提交:

  1. HEAD
  2. Commit3
  3. Commit2
  4. Commit1

...我知道我可以修改头部提交git commit --amend.但是我怎么能修改Commit1,因为它不是HEAD提交?

git git-rewrite-history

2077
推荐指数
15
解决办法
69万
查看次数

如何修改旧的Git提交?

我做了3个git提交,但没有被推送.如何修改不是最新的旧版本(ddc6859af44)和(47175e84c)?

$git log
commit f4074f289b8a49250b15a4f25ca4b46017454781
Date:   Tue Jan 10 10:57:27 2012 -0800

commit ddc6859af448b8fd2e86dd0437c47b6014380a7f
Date:   Mon Jan 9 16:29:30 2012 -0800

commit 47175e84c2cb7e47520f7dde824718eae3624550
Date:   Mon Jan 9 13:13:22 2012 -0800
Run Code Online (Sandbox Code Playgroud)

git version-control git-rewrite-history

148
推荐指数
5
解决办法
10万
查看次数

如何更改过去的提交以包含丢失的文件?

我已提交更改,忘记将文件添加到更改集.在其他提交之后,我意识到文件现在从HEAD^4提交中丢失了.

如何重写先前的提交以包含丢失的文件?

git git-commit

94
推荐指数
4
解决办法
3万
查看次数

如何在git中编辑任何提交的提交消息?

假设我有3次未提交的提交.现在我想更改第一次或第二次提交的提交消息(为第三次提交更改它们很简单git commit --amend).怎么做?

git commit-message

8
推荐指数
2
解决办法
2915
查看次数

重新绑定特定的 SHA1

如果我有以下提交

38deab3 Bug Fix# 10
f33fb65 Bug Fix# 20
4fa0485 Bug Fix# 30
Run Code Online (Sandbox Code Playgroud)

为什么git rebase -i f33fb65允许我编辑 38deab3 而不是 f33fb65?为什么我必须运行git rebase -i 4fa0485才能编辑 f33fb65?

来源。

git

5
推荐指数
2
解决办法
6232
查看次数

修改旧提交

我的提交历史如下:

* 8cd26ba 2013-06-26 | history server-side (HEAD, noXHR)
* bffd858 2013-06-25 | popups and modals
* d95c5f4 2013-06-21 | Map update for new interaction
...
Run Code Online (Sandbox Code Playgroud)

当我已经承诺'8cd26ba'时,我发现了模态机制中的一个错误并想要解决它.我试图修改'bffd858'(因为修复与它有关),如此处所述.我做了以下几个步骤:

  1. 类型

    $ git rebase -i bffd858
    
    Run Code Online (Sandbox Code Playgroud)
  2. git给我看(纳米)

    pick 6fa566b history server-side
    # Rebase bffd858..6fa566b onto bffd858
    #
    # 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 …
    Run Code Online (Sandbox Code Playgroud)

git

3
推荐指数
1
解决办法
637
查看次数