Git行被删除,恕不另行通知

时间:2011-04-09 23:39:42

标签: git github

我有一个远程设计,当他提交时他会不断删除行但是它们没有显示在git日志中,他如何删除行但是阻止git显示它们?

让我举个例子: 我添加了一个边距:0 30px线到其中一个类。几小时后,他的一次提交删除了该行:



   DANIEL-PALACIOs-MacBook-Air:Groupy skoda306$ cat public/stylesheets/sass/custom.sass | grep "margin: 0 30px" 

这不产生输出,但我可以在日志中清楚地看到我添加了行


DANIEL-PALACIOs-MacBook-Air:Groupy skoda306$ git log -S"margin: 0 30px" public/stylesheets/sass/custom.sass 
commit 72e32eb415ca2282dffb89f7f6174c0f7136e2d5
Author: Daniel Palacio 
Date:   Sat Apr 9 15:17:39 2011 -0400

    Changed the buy button to make it bigger

但是git从未显示该行何时被删除,他是如何做到的?

很抱歉因为任务过于混乱而无法理解

3 个答案:

答案 0 :(得分:1)

尝试git log --patch查看提交的差异。这将在日志消息的正下方显示已删除的行。我希望我能正确理解你的问题。

答案 1 :(得分:1)

您正在寻找git log --patchgit diff <commit_id>

默认情况下,git --log仅显示用户提交的消息,但不显示实际的代码差异。

答案 2 :(得分:1)

git log -S还会显示该特定文字是否已删除。因此,据我所知,列出的提交(72e32eb415c)可能正好是删除该行的那个:)现在,我当然确定你检查过了,但我想我会提到它。 [1]

我想

git blame -- /public/stylesheets/sass/custom.sass

应该有更多的亮点。如果您知道靠近目标的搜索模式,请执行类似

的操作
git blame -L/pattern/,+5  -- /public/stylesheets/sass/custom.sass

$ 0.02


[1]这个git包证明了:

base64 -d > bundle.git <<HERE
IyB2MiBnaXQgYnVuZGxlCjFjYTYyYzg4N2VhNDMxNmRlNTJmMTFmYjgxZTA4OWZlNTA3N2FkOTIg
SEVBRAoKUEFDSwAAAAIAAAAGkQ14nJWLWwrCMBAA/3OK/Atld/MGEe/gCbLJloq2lXS9v3oEfwYG
ZnSI2C4YPZe5OgqlICTK2FNMwLVxBM+Nw5yRzKsO2dQmRsm5z9S9c8iFY6DyrUKPMbTsMyHU6JKp
b132YW+iiz0fssh1FRmPqtNPpu15seiAXPmC7AkIwLR9Xe+q8udmDmn71s0H9rc8+5IKeJyVjMEN
wjAMAP+Zwn+kyklqIksIsQMTpMZRIppWSs3+lBH43T3ubKgCzZKkFOGwMHrPkgqe9Ip8VaI5UV6K
FEouf6zuA55qFW6HVn101fHONv1k2tY7+Ighcjw3cMGA6GTvvZnpn5lrW7OWV/cFxPUwvq0BeJwB
HQDi/zEwMDY0NCBhAPTL8Mk74sG76S9n4/Szffj3AZ6+wwsPlLYBeJxLTCzgysvPL+HKzUwt5qoq
LebKSi3hAgBYlgd4rQF4nDM0MDAzMVFIZJA65rLv7bKXZ0/+XDD91p3gq/99wtQBtMEOe7wBeJxL
TCzgysvPL+HKzUwt5koqyk8t4qoqLebKSi3hAgCOjwmcDdQMPXKLB94u5+xOPu4Y/ZcQw6I=
HERE

做一个克隆并测试它

git clone bundle.git bundle
(cd bundle && git log -pSbroer)

将显示添加的修订,删除“broer”一词