相关疑难解决方法(0)

在Git中提交根提交之前添加提交?

新问题

两个问题:

  1. 我试图在所有提交之前提交一个提交.
    最底层的提交有660fb2a76211f36ec9a67d0454a90eab469e9fd0SHA.当我输入git rebase -i 660fb2a76211f36ec9a67d0454a90eab469e9fd0每个提交但最后一个提交显示在列表中.
    我真的需要这个提交出现所以我可以把第一个提交作为最后一个!

  2. 当我把第一个提交作为第一个提交在列表中时(意思是第二个提交总共,因为第一个提交不在上面提到的列表中)我得到一个错误:error: could not apply b722c76... v1.4.3 BEAT release
    我只是从列表的底部剪切并放入它到顶部!我没有改变号码!
    我也试了好几次.同样的结果.

到目前为止就是这样.如果您有疑问请继续问!

原始问题

我刚刚发现了我项目的旧备份.这些备份是在我使用git之前创建的.
我现在想将它们作为旧提交添加到我的存储库中.这意味着我必须将这些提交放在所有其他提交之前.

现在有几个问题:

  1. 我如何在其他人之前提交一个提交?
  2. 我怎么能这么快?(我有很多备份!)
  3. 如何为这些"旧"提交设置日期?(我知道备份的日期!)

如果不清楚,请提及.我会解决这个问题!

最后一件事:

我已经在GitHub上发布了这个.我主要使用他们的软件来提交提交.那我怎么把它推回GitHub呢?

git backup commit github

16
推荐指数
1
解决办法
6503
查看次数

我可以从Git仓库中删除初始提交吗?

似乎我最初的提交占用了90%的空间,因为它意外地在其中包含了大量的媒体文件.有没有办法从本地和远程回购中删除第一个提交,或者我应该留下这个?

git

15
推荐指数
1
解决办法
9600
查看次数

拆分git中的第一个提交

我想在我的git存储库中拆分第一个提交,但我不能使用rebase来执行此操作,因为需要父节点.我发现编辑Git中的root提交?对修改第一次提交很有用,但不能拆分它.我该怎么分裂呢?

git

15
推荐指数
2
解决办法
1799
查看次数

使用空提交启动 Git 存储库有什么好处?

找到一篇关于使用空提交启动存储库的文章。看了几遍帖子,还是不明白其中的道理:

\n
    \n
  1. \n
    \n
    1.git log和其他命令会出现可怕的错误消息。
    \n
    2. 您可以\xe2\x80\x99git reset回到初始状态。
    \n
    \n

    根据上面前两节的标题,我怀疑这可能是一篇讽刺作品。

    \n
  2. \n
  3. \n
    \n
    3. 您可以\xe2\x80\x99t 重新设置初始提交的基准。
    \n
    \n

    然而,这似乎是一个有效的观点(与链接文章《鲜为人知的 Git 命令》相呼应)呼应),但当我开始思考它时,我只是看不出这在实践中有何用处(或者什么)它试图阻止)。

    \n
  4. \n
  5. 原帖链接:(2008?)Git Magic - 附录\xc2\xa0A.\xc2\xa0Git 缺点:初始提交

    \n

    我同意“从 0 开始计数”的观点,但除了迂腐之外,仍然不明白空的初始提交有什么好处。

    \n
  6. \n
  7. 原帖链接:(2010) 如何初始化我的 Git\xc2\xa0repositories | 凯文·德尔戴克

    \n

    这篇文章确实给出了使用此技巧进行代码考古目的的基本原理(仍然不了解具体细节,但我知道这是针对特殊用例的)。

    \n
  8. \n
\n

第 3 项和第 4 项中的链接显然已经过时,并且整个想法显然从未成功(?),但我仍然想知道它是否仍然有好处 - 或者从那时起 Git 的变化消除了它的必要性。

\n
\n

当然,在输入所有这些内容后,我找到了 SO 线程:

\n

git

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

Git,编辑所有分支的根提交

我必须重写我的存储库的历史记录,因为它包含一些凭据.因为我必须修改root提交,所以我遵循Git Faq的指示:

git rebase -i允许您方便地编辑除根提交之外的任何先前提交.以下命令显示如何手动执行此操作.

# tag the old root
git tag root `git rev-list HEAD | tail -1`
git checkout -b new-root root
# edit...
git commit --amend

# check out the previous branch
git checkout @{-1}
# replace old root with amended version
git rebase --onto new-root root

# cleanup
git branch -d new-root
git tag -d root
Run Code Online (Sandbox Code Playgroud)

我的问题是,我已经在存储库中有两个分支和几个标签,我希望我的历史记录重写也适用于那些.回购还没有公开,所以这不是问题.我以前问了一个类似的问题,但在那种情况下git rebase没有使用该命令.这是我的回购的基本图表:

+  master branch
|
|   + topic branch
|   |
| …
Run Code Online (Sandbox Code Playgroud)

git

2
推荐指数
1
解决办法
1870
查看次数

标签 统计

git ×5

backup ×1

commit ×1

github ×1