问题标签 [git-blame]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
546 浏览

git - git:自特定提交以来*未*更改的行数?

有很多很棒的命令行 fu 可以找到更改(或更改统计信息)的答案,但我想找到相反的答案:自特定提交以来(每个文件)有多少行没有更改?

我能找到的最接近的是:如何找到哪些文件自提交以来没有更改?但我想知道有多少行(理想情况下:在每个文件中)保持不变,而不是哪些文件。

所以,基本上:除了插入和删除之外, git diff --stat 可以输出未更改的行吗?

或者,我想 git ls-files、git blame 和一些 awk 魔术可能会解决问题,但我还没有弄清楚。-- 例如,不是用最后一次更改的提交号标记每一行,我可以让 git-blame 指示此更改是在给定提交之前还是之后发生的?再加上 grep 和 wc -l 这会让我到达那里。

0 投票
3 回答
3280 浏览

visual-studio - 如何责怪 VS 2015 中特定代码行的先前版本?

我正在使用带有 Git 集成的 Visual Studio 2015。我想要实现的是回到特定代码行的历史。

我知道有源代码管理>注释。但后来我只能看到最新的变化。然后,我可以右键单击注释槽上的行并说“注释此版本”,这将为我提供该特定行的最新更改。但从那里,如何让这条线回到历史?“注释此版本”显示为灰色...

0 投票
1 回答
2610 浏览

git - git责备当前分支中不存在的文件

我有一个文件存在于 branch_A 但在 branch_B 中不存在。

我想跑

但是,git 抱怨我在本地没有该文件 - 这是正确的,但忽略了我想归咎于 branch_A 的事实。我希望 git blame 能够检查相对于所需分支而不是签出分支的文件是否存在。

如果我在分支 B 上运行它,我可以欺骗 git blame 来做我想做的事:

有没有一种简单的方法可以做到这一点?

0 投票
0 回答
2778 浏览

sonarqube - 在 SonarQube 扫描仪执行期间发生错误

我正在使用 sonarqube-6.0 并尝试使用示例示例与 sonar-scanner 一起运行

每当我在声纳扫描仪中运行任何项目时,我都会受到责备错误

sonar-scanner 配置中的文件 Conf 是 vi sonar-scanner.properties

#

当我运行命令 ./sonar-scanner 这些是我经常遇到的错误

0 投票
0 回答
241 浏览

git - IntelliJ 显示 Git 注释文件

有没有办法/窗口来显示被 Git 注释的文件列表?

显然,从特定编码会话关闭编辑器时忘记关闭该功能,因此注释图标显示在项目资源管理器上的模块名称之前。

0 投票
1 回答
82 浏览

git - Git责备-L错误?

我正在运行带有多个 -L 选项的 git blame -L 以便在单个 git 调用中获取非顺序行的行信息。

我相信这个电话:

应该相当于这两个分别进行的调用

但是,我遇到了一种情况,即使用多个 -L 选项实际上返回了第 38 和 39 行,而不是预期的第 38 和 40 行:

当我只有一个 -L40,40 时,git 实际上会正确返回第 40 行:

关于 -L 的实际工作方式,我是否缺少一些东西,或者这是一个 git 错误?

我尝试同时使用 git 版本 2.7.0.windows.1 和 2.11.0.windows.1。

0 投票
0 回答
63 浏览

git - 我可以在不使 git-blame 无用的情况下对 git repo 进行重大更改吗?

所以,假设我有一个回购,它的发展一直是……有机的。

为了解决问题,我制定了带有 linting 文件的编码标准。

我正在使用一个很好的 linter,它能够自动修复许多平凡的问题。

如果我对 repo 运行它并提交更改,那么任何重大修改文件的 git-blame 信息都将变得无用。

那么,有没有办法避免这个问题呢?

例如,有没有办法将一条线的责任归咎于提交者以外的其他人?一种在不改变责备信息的情况下提交的方法?

另一种方法可能是可能的(如果提交未签名):逐行修复脚本并以适当的用户身份提交每个更改......但这会在您的回购中创建一个巨大的提交链......

用于git blame查看之前的提交,一旦清理发生,并不能真正解决这个问题。

这个问题有什么解决办法吗?

0 投票
3 回答
11029 浏览

git - git blame on windows 报告“致命:没有这样的路径在头部”

当我对文件夹中的文件运行 git blame 时,例如:

git blame Foo/FileA.txt

它返回

fatal: no such path 'Foo/FileA.txt' in HEAD

我可以清楚地看到文件系统上存在这个文件,并且可以成功归咎于同一文件夹中的其他文件-这是怎么回事?

我发布了这个问题和答案,因为它让我今天难住了一段时间,而且我找不到一个可以解决所有问题的答案。

0 投票
0 回答
317 浏览

git - git blame 如何识别添加或删除哪些行

举个例子,看看这里的这个提交,网站中的责备视图清楚地显示了哪些行被添加,哪些行被从当前提交中删除。它是如何做到的?在网上找了半天,才发现通过这些@@ -77,13 +77,15 @@标注,修改的地方一直在跟踪中。但它只说旧文件中的第 77 行有 13 行,新文件中的第 77 行有 15 行。那么实际更改的行是如何保持跟踪的。谁能帮我找到我的问题的答案。预先感谢

0 投票
2 回答
866 浏览

git - git:如何从 blob ID 中查找文件历史记录

我正在尝试$Id: $用 git 复制 Subversion 的功能。我知道我可以.gitattributes用来设置ident属性,这将允许我将 blob ID 嵌入到源代码注释中。这是基本要求,我被覆盖了。

但是我正在努力弄清楚如何使 ID 在实际意义上有用。git log并且git blame需要一个文件名,所以我不能用他们的 ID。git show只显示 blob 内容,但不提供任何指向提交的链接。

我想要的是,给定一个 blob ID,以获取创建该 blob 的提交。(最终,获取文件的数据,git log或者git blame能够检出包含该文件的修订版)。

我很欣赏像 git 这样的分布式系统中的提交历史比颠覆更复杂,但如果我能得到任何东西作为起点,那就足够了。我真正需要的是能够证明给定源代码,我可以追溯到版本控制历史。