X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=cache.h;h=f0c9b01aa394c0a9a356f4b661141b77a0d7c9f6;hb=0516de30e8bdd26086e2a3edd3375981fd0c34d6;hp=f14a4ce91aa83c0ed853c6d9fd9a7b6bc2cc12db;hpb=c508df5edfe12b9df7dfea4d438c1dab2812b3e9;p=git.git diff --git a/cache.h b/cache.h index f14a4ce9..f0c9b01a 100644 --- a/cache.h +++ b/cache.h @@ -38,10 +38,9 @@ #define NORETURN __attribute__((__noreturn__)) #else #define NORETURN -#endif - #ifndef __attribute__ -#define __attribute(x) +#define __attribute__(x) +#endif #endif /* @@ -59,7 +58,11 @@ * We accept older names for now but warn. */ extern char *gitenv_bc(const char *); +#ifdef __GNUC__ #define gitenv(e) (getenv(e) ? : gitenv_bc(e)) +#else +#define gitenv(e) (getenv(e) ? getenv(e) : gitenv_bc(e)) +#endif /* * Basic data structures for the directory cache @@ -140,6 +143,10 @@ extern char *get_graft_file(void); #define ALTERNATE_DB_ENVIRONMENT "GIT_ALTERNATE_OBJECT_DIRECTORIES" +extern const char **get_pathspec(const char *prefix, char **pathspec); +extern const char *setup_git_directory(void); +extern char *prefix_path(const char *prefix, int len, char *path); + #define alloc_nr(x) (((x)+16)*3/2) /* Initialize and use the cache information */ @@ -306,6 +313,7 @@ struct ref { struct ref *next; unsigned char old_sha1[20]; unsigned char new_sha1[20]; + unsigned char force; struct ref *peer_ref; /* when renaming */ char name[0]; }; @@ -319,7 +327,7 @@ extern int get_ack(int fd, unsigned char *result_sha1); extern struct ref **get_remote_heads(int in, struct ref **list, int nr_match, char **match); extern struct packed_git *parse_pack_index(unsigned char *sha1); -extern struct packed_git *parse_pack_index_file(unsigned char *sha1, +extern struct packed_git *parse_pack_index_file(const unsigned char *sha1, char *idx_path); extern void prepare_packed_git(void);