小编Ano*_*ose的帖子

使'git log'忽略某些路径的更改

git log除了我指定的文件外,我怎么才能只显示改变文件的提交?

有了git log,我可以将我看到的提交过滤给那些触及给定路径的人.我想要的是反转该过滤器,以便只列出除指定的触摸路径以外的触摸路径.

我可以得到我想要的东西

git log --format="%n/%n%H" --name-only | ~/filter-log.pl | git log --stdin --no-walk
Run Code Online (Sandbox Code Playgroud)

在哪里filter-log.pl:

#!/usr/bin/perl
use strict;
use warnings;

$/ = "\n/\n";
<>;

while (<>) {
    my ($commit, @files) = split /\n/, $_;

    if (grep { $_ && $_ !~ m[^(/$|.etckeeper$|lvm/(archive|backup)/)] } @files) {
        print "$commit\n";
    }
}
Run Code Online (Sandbox Code Playgroud)

除了我想要比这更优雅的东西.

请注意,我不是在问如何让git忽略这些文件.跟踪和提交这些文件.就是这样,大多数时候,我对看到它们并不感兴趣.

相关问题:如何反转`git log --grep = <pattern>`或如何显示与模式不匹配的git日志除了提交消息而不是路径之外,它是同一个问题.

关于这个主题的论坛讨论从2008年开始:Re:从git-diff中排除文件这看起来很有希望,但线程似乎已经枯竭了.

git

108
推荐指数
2
解决办法
2万
查看次数

为什么Scala会自动应用thunk?

ShadowofCatronScala Tutorial 3视频中,在2:40之后,它指出了一个thunk名称后面的括号是可选的."寮步?" 说我的函数式编程大脑,因为函数的值和它在应用时评估的值是完全不同的东西.

所以我写了以下内容来试试这个.我的思考过程在评论中有所描述.

object Main {

    var counter: Int = 10
    def f(): Int = { counter = counter + 1; counter }

    def runThunk(t: () => Int): Int = { t() }

    def main(args: Array[String]): Unit = {
        val a = f()     // I expect this to mean "apply f to no args"
        println(a)      // and apparently it does

        val b = f       // I expect this to …
Run Code Online (Sandbox Code Playgroud)

syntax functional-programming scala

27
推荐指数
4
解决办法
2838
查看次数

如何在Oracle SQL*Plus中显示LOB列的完整内容?

当我尝试在SQL*Plus中显示LOB(大对象)列的内容时,它会被截断.我如何展示整件事?

oracle blob sqlplus clob lob

22
推荐指数
2
解决办法
5万
查看次数

为新项目选择"更好"或更熟悉的技术?

我正在寻找一个全新项目的工作,这是我作为我的第一个独立可销售项目一直在思考的问题.从广义上讲,它是一个基于Web的服务应用程序,我的第一选择,服务器语言非常简单......我在过去的Java Web应用程序中非常了解Java.

但是我在做Web应用程序方面的经验涉及JSP,Servlets和JSTL ......我知道像Hibernate/Spring这样的新技术背后的想法,但从未使用它们.所以我们编写了自己的DAO,通过编写生成XML/JSON页面的特殊mini-JSP页面来处理AJAX等.

我并不认为Spring/Hibernate是执行任何Java Web项目的"唯一"或"正确"方式,但它们被广泛使用.另一方面,不仅试图学习这些增加了初始开发时间,而且我将利用我的学习尝试来构建生产系统.

我记得乔尔的一篇早期文章说过(我会解释,因为我找不到它)

"无论什么酷,总是使用首席开发人员(或开发团队?)最了解的技术"

我想知道人们怎么想的?

ps:这应该是CW吗?

java spring hibernate

15
推荐指数
2
解决办法
590
查看次数

IntelliJ:禁止HTML属性的引用插入

在IntelliJ IDEA 11或12中,打开HTML文件,输入

<img src=
Run Code Online (Sandbox Code Playgroud)

导致自动插入双引号,导致

<img src=""
Run Code Online (Sandbox Code Playgroud)

因为我在我读到的地方之前输入,这通常意味着我最终会得到类似的东西

<img src=""image.png" alt="Image"/>"
Run Code Online (Sandbox Code Playgroud)

如何防止在属性名称后自动插入双引号?

intellij-idea

9
推荐指数
2
解决办法
1314
查看次数

Tomcat在哪里附加/到目录路径?

假设我的Tomcat webapps目录如下所示:

webapps/
webapps/fooapp/
webapps/fooapp/WEB-INF/
webapps/fooapp/WEB-INF/web.xml
webapps/fooapp/bardir/
Run Code Online (Sandbox Code Playgroud)

当我发出GET请求时/fooapp/bardir,Tomcat发现webapps/fooapp/bardir是一个目录,并发送回302 /fooapp/bardir/(在结尾处有一个斜杠).

这是我的问题:Tomcat源代码在哪里发生这种情况? (我正在看6.0.x但任何版本的正确答案都是一个很好的起点.)

我可以在这个主题上找到的唯一参考资料是Catalina功能规范,其中说明了默认Servlet:

在此servlet处理的每个HTTP GET请求上,应执行以下处理:

[...]

  • 如果请求的资源是目录:
    • 如果请求路径不以"/"结尾,则重定向到附加了"/"的相应路径,以便正确解析欢迎文件中的相对引用.

但是,此功能似乎不在org.apache.catalina.servlets.DefaultServlet中; 或者至少,它并不是唯一的:如果我用一个servlet 类不存在servlet替换web.xml中的默认servlet ,目录路径仍然会返回302以添加斜杠,而每个其他请求都会返回错误正如所料.

java tomcat servlets tomcat6

6
推荐指数
1
解决办法
2187
查看次数

查找Java类文件版本之间的差异

我正在使用来自商业供应商的大型Java Web应用程序.我收到了来自供应商的补丁,其中包含一个新的.class文件,该文件可以解决我们在软件中遇到的问题.过去,应用此供应商的补丁程序会导致出现新的且完全不相关的问题,因此我希望在将其应用于测试实例之前了解所做的更改.

我并排获得了两个.class文件,一个是从当前运行的版本中提取的,另一个是来自供应商的. JADJReversePro分别将两个版本反编译和反汇编到同一输出.但是,.class文件的大小不同,我看到输出的差异od -x,所以它们肯定不相同.

我可以采取哪些其他步骤来确定两个文件之间的区别?


结论:

感谢您的好评.由于javap -c两个类文件的输出也相同,我将得出结论,Davr的权利和供应商发送给我一个安慰剂.虽然我因为这个原因接受了Davr的答案,但是Chris Marshall和John Meagher让我接受了javap,所以感谢你们三个人.

java decompiling

5
推荐指数
2
解决办法
1万
查看次数

如何将子查询结果字段连接到父查询中?

数据库:SQL Server 2008。

我有一个像这样的真正(假)常规查询:-

SELECT CarId, NumberPlate
    (SELECT Owner
     FROM Owners b
     WHERE b.CarId = a.CarId) AS Owners
FROM Cars a
ORDER BY NumberPlate
Run Code Online (Sandbox Code Playgroud)

这就是我想要得到的......

=> 1    ABC123     John, Jill, Jane
=> 2    XYZ123     Fred
=> 3    SOHOT      Jon Skeet, ScottGu
Run Code Online (Sandbox Code Playgroud)

所以,我尝试使用

AS[Text()] ... FOR XML PATH('')但那是包括奇怪的编码字符(例如回车)。......所以我对此并不100%满意。

我还尝试查看是否有 COALESCE 解决方案,但我所有的尝试都失败了。

所以 - 有什么建议吗?

sql-server concatenation subquery sql-server-2008

4
推荐指数
2
解决办法
5万
查看次数

在Java中从链表中删除重复项而不使用额外的缓冲区

我正在审查即将进行的测试的一些代码片段.我在笔记中看到了这一点,刚才意识到方法1的代码实际上并没有删除重复项,如果列表是这样的A - > B - > C - > A.我写了一个替代函数(方法2)我认为实际上会有效.你们有什么感想?方法1实际上不起作用,我在追踪错误吗?ps我们目前不允许编译器:)

这是代码,简要介绍它应该做什么.

方法1:当头部和尾部有两个确切的东西时,我认为不起作用.编写代码以从没有缓冲区的未排序列表中删除重复项.Wwe可以用两个指针迭代:"current"执行正常迭代,而"runner"遍历所有先前节点以检查重复.Runner每个节点只能看到一个重复,因为如果有多个重复项,它们就已经被删除了.

public static void deleteDuplicates1(LinkedListNode head) {
if (head == null) return;
LinkedListNode previous = head;
LinkedListNode current = previous.next;
while (current != null) {
    LinkedListNode runner = head;
       while (runner != current) { // Check for earlier dups
          if (runner.data == current.data) {
              LinkedListNode tmp = current.next; // remove current
              previous.next = tmp;
              current = tmp; // update current to next node
              break; // all other dups have …
Run Code Online (Sandbox Code Playgroud)

java linked-list no-duplicates

2
推荐指数
2
解决办法
9845
查看次数

JVM:无法检测初始线程堆栈位置 - find_vma失败

The compilation was successful
The multiplication should have been performed at compile time without any code being generated.
However, your solution generated the following code:
    Java HotSpot(TM) 64-Bit Server VM warning: Can't detect initial thread stack location - find_vma failed
        mov  ax,5
        mov  ax,6
        mul  ax
    [ the expected value was 30, but you calculated the result as 6 ]
Run Code Online (Sandbox Code Playgroud)

我在学校的系统中输入了一些代码,我收到了此错误消息.我不明白它所说的部分"乘法应该在编译时执行,而不会生成任何代码."

谁知道我可能做错了什么?

(我无法透露我输入的代码,因为我不希望它出现在搜索引擎中.有没有办法可以私下显示我输入的代码?)

java jvm

2
推荐指数
1
解决办法
6138
查看次数