gpt4 book ai didi

django - 从使用 GIT-SVN 创建的 GIT 存储库 fork 的限制?

转载 作者:太空狗 更新时间:2023-10-29 14:16:10 25 4
gpt4 key购买 nike

许多开源项目(例如 django )都有 GIT 镜像,这些镜像又 fork 用于私有(private)或公共(public)开发。 GIT 镜像通过 git svn rebase 保持最新。但是 Pro Git Book包含这个明确的建议:

Ahh, but the bliss of rebasing isn’t without its drawbacks, which can be summed up in a single line:

Do not rebase commits that you have pushed to a public repository.

If you follow that guideline, you’ll be fine. If you don’t, people will hate you, and you’ll be scorned by friends and family.

When you rebase stuff, you’re abandoning existing commits and creating new ones that are similar but different. If you push commits somewhere and others pull them down and base work on them, and then you rewrite those commits with git rebase and push them up again, your collaborators will have to re-merge their work and things will get messy when you try to pull their work back into yours.

像 Django 这样的开源镜像是否违反了上面关于不在公共(public)仓库中 rebase 的粗体规则?如果不是,为什么不呢?如果是这样,那么使用这些可以用“常规”非重新设置基数的 Git 项目可以完成的镜像有什么不能做的呢?如果这是一个明显的问题,我们深表歉意;我是 Git 新手。

最佳答案

思路是:

  • 任何 Git 分支是 git svn rebase 的直接结果都不应该 rebase :它的历史必须保持最初导入的状态,以便成功提交
  • 任何其他 Git 分支(不直接链接到 SVN 分支)都可以随意 merge/ rebase 。

另见 Easy merging in svn using git-svn .

因此,如果在各种 Django 存储库中受 merge/ rebase 影响的分支不是涉及 dcommit(同步回 SVN 存储库)的分支,应该没问题。

关于django - 从使用 GIT-SVN 创建的 GIT 存储库 fork 的限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3861126/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com