diff options
author | Jonathan Tan <jonathantanmy@google.com> | 2017-08-18 15:20:16 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-08-23 15:12:06 -0700 |
commit | 4f39cd821d1756f5f6d145f987576660136931ee (patch) | |
tree | c7a0b1de6a17b1336f82bbbd598d766e6d0030e3 /packfile.h | |
parent | 39566494226919aa18951f2abff6491f5547d377 (diff) | |
download | git-4f39cd821d1756f5f6d145f987576660136931ee.tar.gz |
pack: move pack name-related functions
Currently, sha1_file.c and cache.h contain many functions, both related
to and unrelated to packfiles. This makes both files very large and
causes an unclear separation of concerns.
Create a new file, packfile.c, to hold all packfile-related functions
currently in sha1_file.c. It has a corresponding header packfile.h.
In this commit, the pack name-related functions are moved. Subsequent
commits will move the other functions.
Signed-off-by: Jonathan Tan <jonathantanmy@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'packfile.h')
-rw-r--r-- | packfile.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/packfile.h b/packfile.h new file mode 100644 index 0000000000..3c4a0dbd7c --- /dev/null +++ b/packfile.h @@ -0,0 +1,27 @@ +#ifndef PACKFILE_H +#define PACKFILE_H + +/* + * Generate the filename to be used for a pack file with checksum "sha1" and + * extension "ext". The result is written into the strbuf "buf", overwriting + * any existing contents. A pointer to buf->buf is returned as a convenience. + * + * Example: odb_pack_name(out, sha1, "idx") => ".git/objects/pack/pack-1234..idx" + */ +extern char *odb_pack_name(struct strbuf *buf, const unsigned char *sha1, const char *ext); + +/* + * Return the name of the (local) packfile with the specified sha1 in + * its name. The return value is a pointer to memory that is + * overwritten each time this function is called. + */ +extern char *sha1_pack_name(const unsigned char *sha1); + +/* + * Return the name of the (local) pack index file with the specified + * sha1 in its name. The return value is a pointer to memory that is + * overwritten each time this function is called. + */ +extern char *sha1_pack_index_name(const unsigned char *sha1); + +#endif |