github - 我在 GitHub 上开发了一个私人仓库,然后将其公开。我可以让我的活动可见吗?
问题描述
我工作了 6 个月的私人回购。今天终于在投稿后公开了。是否可以使活动(那些绿色方块)可见?我尝试单击contribution setting
并收到消息Visitors will now see your public and anonymized private contributions
,但活动仍然没有显示。
更新1:
我注意到只记录了我在 GitHub(网站,而不是从我的机器上推送代码)上所做的更改。也就是说,只有readme
文件显示我经常在网站上更新它。
更新 2:
我跑去git --no-pager log -s --format="%ae"
查看提交时使用了哪些电子邮件,得到以下信息:有些电子邮件是primary
GitHub 下的电子邮件,有些是 form 43555163+Penguin@users.noreply.github.com
,有些是Penguin@Penguin-MacBook-Pro.local
,有些是Penguin@econ2-204-32-dhcp.int.university_name.edu
。
此外,正如我在下面的评论之一中提到的,如果我去我的仓库并专门查看提交,我可以看到类似的内容:Penguin authored and Penguin committed on May 27 1 parent 1d71ac3 commit cb95c2870de67383ee653849b4c7b40a062f5fd3
. 但这并没有显示在我的活动中。
最后,一些评论提到在 GitHub 上创建一个新的 repo 并推送我以前的提交(在过滤了我不太理解的电子邮件之后)。但是,我已经Stargazers
在这个 repo 上有了几个,并想保留它们。通过进行新的回购,我相信这些将会消失。
更新 3:
我曾经git filter-repo
将所有电子邮件更改为我的主电子邮件,现在我以前所有的提交电子邮件似乎都是我打电话时的主电子邮件git --no-pager log -s --format="%ae"
。但是,我仍然没有看到活动显示。例如,如果我去我的仓库,我可以看到其中一个提交说Penguin authored and Penguin committed on Apr 8
,但这并没有显示在活动中。
解决方案
我注意到只记录了我在 github(网站而不是从我的机器上推送代码)所做的更改。
这意味着您需要从克隆存储库的本地文件夹中检查:
git config user.name
git config user.email
确保这些与您的 GitHub 用户帐户和 GitHub 用户电子邮件相匹配。
然后进行一些新的提交,然后推送:看看是否反映了活动。
OP Penguin在评论中确认:
看起来电子邮件不一样(由于某种原因,我的本地计算机中的电子邮件是空的)。
现在我可以通过我的本地机器推送提交,它们显示为活动。
有没有办法显示我以前的提交?
为此,您需要重写您过去的提交,并强制推送结果(如果您是唯一在该存储库上工作的人,这没关系)。
请参阅如何切换 GitHub 帐户并追溯更新提交历史?例如,使用git filter-repo
(使用 mailmap 地图),或git filter-repo --commit-callback
.
我不太明白。如果我将创建一个新的回购并将所有内容推送到它,我将失去观星者
您不会创建新的远程存储库,只需将其克隆到新的本地克隆存储库中,然后在那里应用 git filter-repo。
一旦本地历史在提交作者方面符合您的期望,您就强制推送回原始远程存储库(及其所有 Stargazers)。
git push --force # at least for the main/master branch
从讨论
我认为 git push --force 有效。我仍然看到提交页面上的提交未经过验证,但活动现在出现了。
这是他们没有验证的问题吗?现在看来,每当我尝试从本地机器推送提交时,出于某种原因,我都需要进行身份验证
远程身份验证不同于提交作者身份和验证。
已验证的方面是由于缺少提交签名,如此处所述。
您需要在本地退出提交(仍在使用git filter-repo
),然后再次强制推送它们。
签名后(使用注册到您的 GitHub 个人资料的密钥),它们将显示为已验证。
git push
with 身份验证取决于您使用的协议(HTTPS 或 SSH),最近(撰写本文时为 2021 年 11 月)由torek在“在 Windows 终端上的 git 上切换帐户的简单方法? ”中解释。
推荐阅读
- python - 如何将列表复制到另一个变量并使该变量不可变?
- lua - Lua 函数如何返回 nil,即使函数内部的返回值不是 nil?
- c# - 如何将数据从一个剃须刀页面发送到另一个页面?
- html - 我的照片没有将 div 调整为正确的形式
- c# - PayPal 加密按钮电子邮件地址错误
- docker - Docker 容器化网络服务器的证书签名请求
- hex - 我不明白 - *(uint*)((byte*)p + Offset)
- ios - 如何在 iOS 的主故事板中为每个设备调整字体大小?
- mapbox - Mapbox 访问令牌限制为 URL 不适用于 github 页面?
- java - 我们在centos7中部署java-web项目时tomcat无法连接mariadb