在工作中,我们将Sourcetree与GitHub结合使用作为我们代码的源代码控制解决方案。在我们的存储库中,我们还创建了几个标记并将它们推送到远程存储库。但是,之后创建和删除的某些标记通常会再次出现在每个开发人员的本地存储库(以及远程控制器)中。
我们已经删除了每个开发人员的本地存储库中的错误标记,并确保禁用“推送所有标记”复选框:
然而,标签不断出现,我们无法看到哪个开发人员对此负责。
我的问题是,如果有一个GIT命令来查看谁将标签从他的本地存储库推送到遥控器?或者是否存在另一种永久性的方法来阻止删除的标签重新出现?
答案 0 :(得分:3)
没有办法确定谁是Git本身推送的东西。但是,由于您提到了GitHub,因此Events API可用于检索分支/标记的最新更改。有关详细信息,请参阅related question。
删除标签肯定不是一个好的工作流程(它们应该是简单的主题分支),但是发出一个手动命令来清理所有克隆应该是好的:
git tag -l | xargs git tag -d && git fetch -t