我想查看Git历史中给定分支的删除/添加行数,按作者分组。gitshortlog-s显示了每位作者的提交次数。有没有类似的东西来获得整体差异统计? 最佳答案 这是一个旧帖子,但如果有人仍在寻找它:安装gitextrasbrewinstallgit-extras然后gitsummary--linehttps://github.com/tj/git-extras 关于git-在git中显示每个作者更改的行数,我们在StackOverflow上找到一个类似的问题:
我有一系列不同作者的提交,我希望在两次提交之间看到一个gitdff输出,但只考虑其中一位作者的提交,比如,比如--git日志中的作者。我对最终的总结差异感兴趣,而不是单个提交的差异。有什么git技巧吗? 最佳答案 这里的问题是在一般情况下你不能这样做。假设爱丽丝更改了一个特定的文件,然后鲍勃更改了它——包括爱丽丝更改的部分——最后爱丽丝再次更改它。如何将爱丽丝的两个差异merge为一个差异?如果您将它们作为两个补丁,则如果没有首先应用Bob的补丁,则第二个补丁根本不会应用!但您也不能简单地将最终状态与原始状态进行比较,因为这将包括B
有没有办法防止强制推送到分支或存储库?我想阻止重要分支无意或有意地重写它们的历史。人们如何在更大的开发团队中处理这个问题?在我看来,理想情况下,可以锁定每个存储库的几个分支,并防止除存储库所有者以外的所有人强制推送到它们。 最佳答案 使用Git使用pre-receive钩子(Hook)可以很容易地做到这一点。当然,这需要您实际上能够安装Hook,并且出于显而易见的原因,GitHub不允许您上传任意可执行文件以在其服务器上运行:-)一般来说,Git或任何分布式版本控制系统的工作流程是不允许其他人推送到您的存储库。相反,你从他们那里pu
如何更改一系列提交的作者? 最佳答案 注意:此答案会更改SHA1,因此在已推送的分支上使用它时要小心。如果您只想修复名称的拼写或更新旧电子邮件,Git可让您在不使用.mailmap重写历史记录的情况下执行此操作。.参见myotheranswer.使用rebase首先,如果您还没有这样做,您可能想在git-config中修复您的名字:gitconfig--globaluser.name"NewAuthorName"gitconfig--globaluser.email""这是可选的,但它也将确保重置提交者名称,假设这是您需要的。要使用
我注意到一件事:使用GitHubUI,我向存储库添加了一个协作者。我看到他们未经我的任何授权/批准就进行了更改。这是一个私有(private)存储库。对于私有(private)存储库,我如何授予某人读取权限和写入权限? 最佳答案 Withprivaterepositories,howdoIgivesomeonereadaccessversuswriteaccess?这种权限不适用于简单帐户。当您将用户添加为协作者时,他将获得读/写权限。如果您拥有Organization,情况就会改变.组织包含团队,每个团队可以拥有不同级别的访问权限
是否可以将提交日期从我的提交更改为作者日期?我修改了一些提交,现在日期都一样了。我想将其设置回旧日期(或作者日期)。这可能吗?我正在使用Sourcetree,所以我有git命令行,但我不是这方面的专家。我的外部存储库是bitbucket。 最佳答案 简答:gitfilter-branch--env-filter'exportGIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"'说明:filter-branch让您重写您的git历史。它可以将转换应用于每个提交或根据特定条件过滤掉提交。请参阅gitfilter-b
我刚刚在GitHub上看到了以下提交:https://github.com/felixge/node-formidable/commit/0a0b150668daa3c6f01626d2565b898e5da12392如何让多个作者像这样在同一个提交上? 最佳答案 那不是真正的两位作者——那是一位作者和一位提交者。这两个字段具有不同的含义。作者是创建内容的人,提交者是提交内容的人。当你做一个正常的提交时,你们都是。(两者都带有关联的电子邮件和时间戳。)但它们可以在几个关键方面变得不同:gitformat-patch/gitam-这对
我有一个存储库,我已经从Subversion克隆了它。我一直在以Git形式在这个存储库中做一些工作,我不想通过再次克隆来丢失该结构。但是,当我最初克隆存储库时,我未能正确指定svn.authors属性(或语义相似的选项)。既然存储库已完全Git化,我有什么方法可以指定SVN作者映射吗?最好,我想更正所有旧提交作者以代表Git作者而不是原始SVN用户名。 最佳答案 首先看看您需要清理什么:gitshortlog-s对于其中的每一个名称,在如下所示的脚本中创建一个条目(假设您希望所有作者和提交者都相同):#!/bin/shgitfilt
我正在使用Eclipse的Git插件。我有几个作者和提交者,当我开始在这些字段中输入时会显示它们。我如何更改此列表,或删除某些作者或提交者?我还想设置我的默认作者和提交者,这将默认显示。 最佳答案 单击窗口>首选项>团队>Git>配置点击添加条目并输入键值对:key:用户名值:您的用户名和键:user.email值:YourEmailHere 关于eclipse-如何更改EclipseGit插件中的默认作者和提交者?,我们在StackOverflow上找到一个类似的问题:
我创建了一个GitHub帐户,我想授予某人写入权限,以便他可以像我一样推送,有一种方法可以通过免费计划添加协作者吗?如果没有,我该怎么办?(除了购买付费帐户,我将来会这样做) 最佳答案 转到设置(https://github.com/user/repo/settings/access)下的ManageAccess页面并根据需要添加协作者。截图: 关于git-向我的免费GitHub帐户添加协作者?,我们在StackOverflow上找到一个类似的问题: ht