Skip to content
  • Duy Nguyen's avatar
    pathspec: pass directory indicator to match_pathspec_item() · ae8d0824
    Duy Nguyen authored and Junio C Hamano's avatar Junio C Hamano committed
    
    
    This patch activates the DO_MATCH_DIRECTORY code in m_p_i(), which
    makes "git diff HEAD submodule/" and "git diff HEAD submodule" produce
    the same output. Previously only the version without trailing slash
    returns the difference (if any).
    
    That's the effect of new ce_path_match(). dir_path_match() is not
    executed by the new tests. And it should not introduce regressions.
    
    Previously if path "dir/" is passed in with pathspec "dir/", they
    obviously match. With new dir_path_match(), the path becomes
    _directory_ "dir" vs pathspec "dir/", which is not executed by the old
    code path in m_p_i(). The new code path is executed and produces the
    same result.
    
    The other case is pathspec "dir" and path "dir/" is now turned to
    "dir" (with DO_MATCH_DIRECTORY). Still the same result before or after
    the patch.
    
    So why change? Because of the next patch about clean.c.
    
    Signed-off-by: default avatarNguyễn Thái Ngọc Duy <pclouds@gmail.com>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    ae8d0824