昨天,我们团队的一名成员对git push --forceBitbucket 存储库进行了内部检查。我知道是谁,但我想知道是否可以收集哪些提交被强制推送到存储库中。
我从 git log/history 中寻找的信息是这样的 -
+ 1951097...9b070f0 tower -> origin/tower (forced update)
当我尝试拉入本地分支并在强制推送后遇到合并冲突时,我看到了此消息,但除了那一次之外,我在其他任何地方都无法看到它。是否有一个地方可以看到所有提交(特别是(forced update)旁边带有该标签的提交?)正在运行Git reflog并且git log似乎没有返回此信息。
我看到这篇文章(很搞笑)类似 - How can I find out who force Push in git?
我不是寻找特定的人(就像上一个问题中的提问者),而是寻找在本地克隆后使用 --force 推送到存储库中的提交。这些信息是否可以收集,或者我运气不好?
谢谢。
我以前的答案是关于找出谁强制推动的,而不是关于强制推动的内容。
如果您有权访问服务器,您应该可以找到旧提交(推送之前)的痕迹git reflog。
从那里,您可以推断出替换旧分支历史记录的新提交。
请注意,如果您无权访问远程服务器(通常是:github.com),您仍然可以通过“穷人的引用日志”(又名推送事件)获取旧分支 SHA1(强制推送之前的分支)( GitHub事件API)。
请参阅“ github 是否记得提交 ID? ”:在右侧分支上查找最近的推送事件:最后一个将是强制的,前一个将代表旧的 SHA1 提交。
| 归档时间: |
|
| 查看次数: |
11750 次 |
| 最近记录: |