【问题标题】:Update a forked repo in github web to be reset to the original one更新 github web 中的分叉存储库以重置为原始存储库
【发布时间】:2020-03-10 09:06:12
【问题描述】:

我已经将一个 repo (Original) 分叉到我的 github 帐户中。 原始存储库发生了变化,并且我在原始存储库后面有一些提交。我从 Original 合并到我的工作区,但我仍然看到我的中间提交。

我需要一个干净的分叉回购(与原始回购相同)。怎么能 我从网络界面执行此操作。?

【问题讨论】:

  • 恐怕 GitHub 不支持这种活动。但是,当您进行合并时,您可以选择在没有合并提交的情况下进行快进合并。这可能是您可以用来解决问题的方法。
  • 这能回答你的问题吗? Clean up a fork and restart it from the upstream

标签: git github sh


【解决方案1】:

目前,无法通过 GitHub Web UI 执行 git-reset

但是,在命令行上执行起来相当容易:

# 1. Add the Original repo as a remote to your local repository
git remote add upstream https://github.com/original/repo

# 2. Fetch all the objects from the Original repo
git fetch upstream

# 3. Reset your local `master` to point to the same commit as `master` on Original
git switch master
git reset --hard upstream/master

这是假设您希望与 Original 相同的分支是 master。如果没有,只需将master 替换为实际的分支名称。

另外,请记住,这将从您正在重置的分支中删除您自己的提交。如果您想保留这些以供以后使用,只需在执行重置操作之前创建一个指向您自己的最新提交的分支

# Optional: Create a branch that points to your own commits before resetting `master`
git switch master
git branch my-own-commits

【讨论】:

    猜你喜欢
    • 2011-04-23
    • 2012-10-05
    • 2013-04-18
    • 2015-05-21
    • 2021-11-22
    • 1970-01-01
    • 2021-11-04
    • 2013-09-20
    相关资源
    最近更新 更多