Merge branch 'dt/cat-file-follow-symlinks'
"git cat-file --batch(-check)" learned the "--follow-symlinks" option that follows an in-tree symbolic link when asked about an object via extended SHA-1 syntax, e.g. HEAD:RelNotes that points at Documentation/RelNotes/2.5.0.txt. With the new option, the command behaves as if HEAD:Documentation/RelNotes/2.5.0.txt was given as input instead. * dt/cat-file-follow-symlinks: cat-file: add --follow-symlinks to --batch sha1_name: get_sha1_with_context learns to follow symlinks tree-walk: learn get_tree_entry_follow_symlinks
This commit is contained in:
20
cache.h
20
cache.h
@ -971,15 +971,21 @@ struct object_context {
|
||||
unsigned char tree[20];
|
||||
char path[PATH_MAX];
|
||||
unsigned mode;
|
||||
/*
|
||||
* symlink_path is only used by get_tree_entry_follow_symlinks,
|
||||
* and only for symlinks that point outside the repository.
|
||||
*/
|
||||
struct strbuf symlink_path;
|
||||
};
|
||||
|
||||
#define GET_SHA1_QUIETLY 01
|
||||
#define GET_SHA1_COMMIT 02
|
||||
#define GET_SHA1_COMMITTISH 04
|
||||
#define GET_SHA1_TREE 010
|
||||
#define GET_SHA1_TREEISH 020
|
||||
#define GET_SHA1_BLOB 040
|
||||
#define GET_SHA1_ONLY_TO_DIE 04000
|
||||
#define GET_SHA1_QUIETLY 01
|
||||
#define GET_SHA1_COMMIT 02
|
||||
#define GET_SHA1_COMMITTISH 04
|
||||
#define GET_SHA1_TREE 010
|
||||
#define GET_SHA1_TREEISH 020
|
||||
#define GET_SHA1_BLOB 040
|
||||
#define GET_SHA1_FOLLOW_SYMLINKS 0100
|
||||
#define GET_SHA1_ONLY_TO_DIE 04000
|
||||
|
||||
extern int get_sha1(const char *str, unsigned char *sha1);
|
||||
extern int get_sha1_commit(const char *str, unsigned char *sha1);
|
||||
|
Reference in New Issue
Block a user