【问题标题】:Contributors in GitHub RepoGitHub 存储库中的贡献者
【发布时间】:2022-01-27 08:02:44
【问题描述】:

我从存储库中克隆了代码,以便为自己的工作获得一些灵感。

现在我做了很多更改后,我想推入我自己的另一个存储库。

我尝试这样做,但我看到两个贡献者,我和克隆仓库的所有者。
谁能帮我获得一个只有一个贡献者(我)的存储库,因为新的存储库意图与初始存储库几乎没有关系?

【问题讨论】:

  • 什么是尴尬?我不明白。
  • 没有什么可以帮忙的。有 两个贡献者。这就是“开源”中的“开放”。这就是 GitHub 的全部意义所在。不担心开心就好。或者将回购设为私有。但是,我仍然认为 fork,而不是 clone 和 push,是一种更好的方式。
  • @matt 一旦您了解了 OP 的意图,就有一些帮助。请参阅我的回答,这应该澄清所说的意图,并回答问题。
  • @VonC 我不同意。我经常分叉,而人们非常经常从我这里分叉,无意为上游做出贡献。
  • 如果您的目标是在您的 GitHub 帐户中托管一个新的独立存储库,那么正确的方法是 fork 而不是 clone。您看到其他贡献者的原因是远程存储库是 origin。如果您尚未进行更改,请登录 GitHub,派生原始存储库,然后将您的存储库克隆到您的桌面/系统。如果您进行了更改,请查看@VonC 答案。

标签: git github


【解决方案1】:

另一种方法是:

  • 在新的本地文件夹中再次克隆原始存储库

  • 删除.git/ 子文件夹

  • 初始化并添加(在您的user.name 下)初始代码库

    git init .
    git add .
    git commit -m "Initial import from codebase https://github.com/x/y"
    
  • 在对第一个克隆存储库进行大量修改期间重放您在本地完成的提交(您可以看到外部贡献者对本质上是来自旧代码库的新项目)

    git remote add firstRepo ../firstClonedFolder
    git fetch firstRepo
    git switch main
    git rebase --onto main firstRepo/main~10 firstRepo/main
    

将 10 替换为您已完成的提交次数。

删除您的 GitHub 存储库并将其重新创建为空:您可以将新的本地存储库推送到它,其中只有您自己的提交。

git remote add origin https://github.com/me/myNewEmptyRepo
git push -u origin main

不要忘记在 README.md 中添加对您从中获得灵感的原始存储库的明确引用,以及指向其作者的链接。

【讨论】:

  • 虽然这个解决方案可能有效,但不承认他人的工作至少是不诚实的,我们不应该鼓励这种行为。
  • @Exitare 我同意。我已经完成了包含原始代码库的正确归属的答案。
  • 感谢您处理此问题!
  • 感谢您的快速响应,我正在尝试这样做,但我没有创建 .git 子文件夹。我正在克隆的 repo 的文件夹中搜索它……对吗?你的意思是,删除新克隆的 repo 中的所有内容?
  • @FrancescoMollica .git 子文件夹通常是隐藏的。您使用的是什么操作系统和 git 版本?删除该文件夹将删除代码库的过去历史记录,而不是代码库本身。
猜你喜欢
  • 2018-07-28
  • 2014-01-09
  • 2018-09-24
  • 2015-08-30
  • 2021-02-08
  • 1970-01-01
  • 2021-04-10
  • 2019-07-30
  • 2021-12-10
相关资源
最近更新 更多