相关疑难解决方法(0)

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

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

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

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

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

如何修改指定的提交?

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

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

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

git git-rewrite-history

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

在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中的第一个提交?

我很好奇如何删除git中的第一个提交.

在做出任何事情之前的修改是什么?此修订版是否有名称或标记?

git commit repository git-commit

136
推荐指数
5
解决办法
6万
查看次数

如何创建一个新的(和空!)"根"分支?

我想在这个git存储库中定义一个新的"root"分支."root"分支是指完全独立于存储库1中所有其他分支的分支.

不幸的是,甚至在Arepo的提交树的基础上提交(让我们称之为)包含很多文件(这是一个在已经相当成熟的项目上初始化的存储库).

这意味着即使我A作为新分支提供<start-point>,这个新分支也不会从"干净的平板"开始,而是包含所有提交的文件A.

有没有什么方法可以在这个存储库中创建一个完全裸的分支,<start-point>尽可能接近A


1 BTW,这等于创建一个新的回购.由于很多原因,单独的回购将不太方便.


编辑:好的,这是我做的,基于vcsjones的回答:

# save rev of the current earliest commit
OLDBASE=$(git rev-list --max-parents=0 HEAD)

# create a new orphan branch and switch to it
git checkout --orphan newbranch
# make sure it's empty
git rm -rf .

# create a new empty commit in the new branch, and
# save its rev in NEWBASE
git commit …
Run Code Online (Sandbox Code Playgroud)

git

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

如何重写第一个git commit消息?

我有一个包含3个提交的工作树:

➜~myprojectgit :(主人) git log

commit a99cce8240495de29254b5df8745e41815db5a75
Author: My Name <my@mail.com>
Date:   Thu Aug 16 00:59:05 2012 +0200

    .gitignore edits

commit 5bccda674c7ca51e849741290530a0d48efd69e8
Author: My Name <my@mail.com>
Date:   Mon Aug 13 01:36:39 2012 +0200

    Create .gitignore file

commit 6707a66191c84ec6fbf148f8f1c3e8ac83453ae3
Author: My Name <my@mail.com>
Date:   Mon Aug 13 01:13:05 2012 +0200

    Initial commit (with a misleading message)
Run Code Online (Sandbox Code Playgroud)

现在我希望reword第一次提交的提交消息(6707a66)

➜~myprojectgit :(主人) git rebase -i 6707

(...进入vim)

pick 5bccda6 Create .gitignore file
pick a99cce8 .gitignore edits

# Rebase 6707a66..a99cce8 onto …
Run Code Online (Sandbox Code Playgroud)

git message git-rebase git-commit revision-history

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

Git:需要一个修订错误

我在我的项目中初始化了一个新的git,到目前为止我只有两个提交.我的日志如下所示

git log
commit e515e5b8dcbd8f1ea4a7a7d4a1efb82a1a0aee7a
Author: Olkun Mustafa <olkun.mustafa@gmail.com>
Date:   Fri Oct 3 10:04:20 2014 +0300

    Temp commit

commit 71781bf0a7807351a56d5155dac94169ea700527
Author: Olkun Mustafa <olkun.mustafa@gmail.com>
Date:   Fri Oct 3 10:01:42 2014 +0300

    First Commit
Run Code Online (Sandbox Code Playgroud)

当我尝试重新提交此提交时,我得到如下错误

git rebase --interactive HEAD~2
fatal: Needed a single revision
invalid upstream HEAD~2
Run Code Online (Sandbox Code Playgroud)

我在谷歌研究,但到目前为止我还没有找到解决方案.

git

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

将大型Git存储库拆分为许多较小的存储库

一个SVN仓库成功转换到Git的,我现在有一个我想分解成多个更小的存储库,并保持历史上的一个非常大的Git仓库.

那么,有人可以帮助拆分可能看起来像这样的回购:

MyHugeRepo/
   .git/
   DIR_A/
   DIR_B/
   DIR_1/
   DIR_2/
Run Code Online (Sandbox Code Playgroud)

进入两个看起来像这样的存储库:

MyABRepo/
   .git
   DIR_A/
   DIR_B/

My12Repo/
   .git
   DIR_1/
   DIR_2/
Run Code Online (Sandbox Code Playgroud)

我试过以下几个方向在此之前的问题,但它试图把多个目录到一个单独的回购协议(时并不真正适合拆离(移动)子目录成独立的Git仓库).

git split repository git-filter-branch

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

如何使用tortoisegit进行rebase(squash)

无法获得如何为当前分支执行squash rebase.控制台命令将是

git rebase -i HEAD~2
Run Code Online (Sandbox Code Playgroud)

然后像往常一样压扁.但是如何在TGit中做同样的事情呢?

用于初始化案例的脚本

git init .
touch 1
git add 1
git commit -m "1"
touch 2
git add 2
git commit -m "2"
touch 3
git add 3
git commit -m "3"
Run Code Online (Sandbox Code Playgroud)

因此,在压缩之后我们将有1个提交3个文件.

有什么建议?

git tortoisegit

42
推荐指数
3
解决办法
5万
查看次数

如何将过去添加到git存储库?

我收到了一些源代码并决定使用git,因为我的同事使用了mkdir $VERSION等方法.虽然代码的过去目前似乎并不重要,但我仍然希望将其置于git控制之下以更好地理解开发过程.所以:

将这些过去的版本放入我现有的git仓库的简便方法是什么?目前没有远程仓库,所以我不介意重写历史记录,但考虑到远程存储库的解决方案当然是首选,除非它更复杂.基于目录或基于档案文件的历史记录,不需要任何更多交互的脚本的加分点.

git

25
推荐指数
1
解决办法
3927
查看次数