Revision c9e1f2c7f2acca17c629255b96761a4a1047a28a authored by Junio C Hamano on 25 March 2015, 23:11:39 UTC, committed by Junio C Hamano on 26 March 2015, 05:39:07 UTC
"git diff --no-index" was supposed to be a poor-man's approach to
allow using Git diff goodies outside of a Git repository, without
having to patch mainstream diff implementations.

Unlike a POSIX diff that treats "diff D F" (or "diff F D") as a
request to compare D/F and F (or F and D/F) when D is a directory
and F is a file, however, we did not accept such a command line and
instead barfed with "file/directory conflict".

Imitate what POSIX diff does and append the basename of the file
after the name of the directory before comparing.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
1 parent 282616c
Raw File
reflog-walk.h
#ifndef REFLOG_WALK_H
#define REFLOG_WALK_H

#include "cache.h"

struct reflog_walk_info;

extern void init_reflog_walk(struct reflog_walk_info** info);
extern int add_reflog_for_walk(struct reflog_walk_info *info,
		struct commit *commit, const char *name);
extern void fake_reflog_parent(struct reflog_walk_info *info,
		struct commit *commit);
extern void show_reflog_message(struct reflog_walk_info *info, int,
				enum date_mode, int force_date);
extern void get_reflog_message(struct strbuf *sb,
		struct reflog_walk_info *reflog_info);
extern const char *get_reflog_ident(struct reflog_walk_info *reflog_info);
extern void get_reflog_selector(struct strbuf *sb,
		struct reflog_walk_info *reflog_info,
		enum date_mode dmode, int force_date,
		int shorten);

#endif
back to top