标签: git-rewrite-history

如何修改现有的,未删除的提交?

我在提交消息中写了错误的东西.或者,我忘了包含一些文件.

如何更改提交消息/文件?提交尚未被推送.

git git-amend git-commit git-rewrite-history

7669
推荐指数
27
解决办法
246万
查看次数

如何在Git中更改多个提交的作者和提交者名称以及电子邮件?

我正在学校的计算机上编写一个简单的脚本,并将更改提交给Git(在我的pendrive中的repo中,从我家里的计算机克隆).几次提交后,我意识到我正在以root用户身份提交东西.

有没有办法将这些提交的作者改成我的名字?

git version-control git-filter-branch git-rewrite-history

2282
推荐指数
30
解决办法
80万
查看次数

如何修改指定的提交?

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

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

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

git git-rewrite-history

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

如何在Git中更改旧提交的时间戳?

如何修改现有的,未删除的提交的答案描述了一种修改先前尚未向上游推送的提交消息的方法.新消息继承原始提交的时间戳.这似乎合乎逻辑,但有没有办法重新设定时间?

git timestamp commit git-rewrite-history

673
推荐指数
26
解决办法
27万
查看次数

如何从Git存储库中的提交历史记录中删除/删除大文件?

偶尔我会把一个DVD-rip放到一个网站项目中,然后不小心git commit -a -m ...,然后,zap,回购邮件被2.2演出臃肿.下次我做了一些编辑,删除了视频文件,并提交了所有内容,但是历史记录中的压缩文件仍然存储在存储库中.

我知道我可以从那些提交开始分支并将一个分支重新绑定到另一个分支.但是我应该怎么做才能将2个提交合并在一起,以便大文件没有在历史记录中显示并在垃圾收集过程中被清除?

git version-control git-rebase git-rewrite-history

646
推荐指数
17
解决办法
22万
查看次数

如何将所有git提交压缩成一个?

你如何将整个存储库压缩到第一次提交?

我可以重新设置第一次提交,但这会让我有2次提交.有没有办法在第一个之前引用提交?

git rebase git-rebase squash git-rewrite-history

427
推荐指数
17
解决办法
20万
查看次数

如何修复错误的合并,并将您的好提交重放到固定合并?

我意外地将一个不需要的文件(filename.orig在解析合并时)提交到我的存储库几个提交之前,直到现在我才注意到它.我想从存储库历史记录中完全删除该文件.

是否可以重写更改历史记录,以便filename.orig从未首先添加到存储库中?

git git-filter-branch git-rewrite-history git-rm

399
推荐指数
6
解决办法
30万
查看次数

从Git历史记录中删除敏感文件及其提交

我想在GitHub上放置一个Git项目,但它包含某些带有敏感数据的文件(用户名和密码,比如/ config/deploy.rb for capistrano).

我知道我可以将这些文件名添加到.gitignore,但这不会删除他们在Git中的历史记录.

我也不想通过删除/.git目录重新开始.

有没有办法删除Git历史记录中特定文件的所有痕迹?

git git-filter-branch git-commit git-rewrite-history

330
推荐指数
9
解决办法
10万
查看次数

在Git中编辑root提交?

有办法从以后的提交中更改消息:

git commit --amend                    # for the most recent commit
git rebase --interactive master~2     # but requires *parent*
Run Code Online (Sandbox Code Playgroud)

如何更改第一次提交(没有父级)的提交消息?

git git-rebase git-amend git-commit git-rewrite-history

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

结合Git存储库的前两个提交?

假设您有一个包含三个提交A,BC的历史记录:

A-B-C
Run Code Online (Sandbox Code Playgroud)

我想将两个提交AB组合到一个提交AB:

AB-C
Run Code Online (Sandbox Code Playgroud)

我试过了

git rebase -i A
Run Code Online (Sandbox Code Playgroud)

这打开了我的编辑器,其中包含以下内容:

pick e97a17b B
pick asd314f C
Run Code Online (Sandbox Code Playgroud)

我改成这个

squash e97a17b B
pick asd314f C
Run Code Online (Sandbox Code Playgroud)

然后Git 1.6.0.4说:

Cannot 'squash' without a previous commit
Run Code Online (Sandbox Code Playgroud)

有办法还是不可能?

git rebase git-rebase git-rewrite-history

194
推荐指数
5
解决办法
4万
查看次数