projects
/
git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
repo-config: trim white-space before comment
[git.git]
/
hash-object.c
diff --git
a/hash-object.c
b/hash-object.c
index
6227936
..
43bd93b
100644
(file)
--- a/
hash-object.c
+++ b/
hash-object.c
@@
-2,9
+2,10
@@
* GIT - The information manager from hell
*
* Copyright (C) Linus Torvalds, 2005
* GIT - The information manager from hell
*
* Copyright (C) Linus Torvalds, 2005
- * Copyright (C) Junio C Hamano, 2005
+ * Copyright (C) Junio C Hamano, 2005
*/
#include "cache.h"
*/
#include "cache.h"
+#include "blob.h"
static void hash_object(const char *path, const char *type, int write_object)
{
static void hash_object(const char *path, const char *type, int write_object)
{
@@
-21,13
+22,21
@@
static void hash_object(const char *path, const char *type, int write_object)
printf("%s\n", sha1_to_hex(sha1));
}
printf("%s\n", sha1_to_hex(sha1));
}
+static void hash_stdin(const char *type, int write_object)
+{
+ unsigned char sha1[20];
+ if (index_pipe(sha1, 0, type, write_object))
+ die("Unable to add stdin to database");
+ printf("%s\n", sha1_to_hex(sha1));
+}
+
static const char hash_object_usage[] =
static const char hash_object_usage[] =
-"git-hash-object [-t <type>] [-w] <file>...";
+"git-hash-object [-t <type>] [-w]
[--stdin]
<file>...";
int main(int argc, char **argv)
{
int i;
int main(int argc, char **argv)
{
int i;
- const char *type =
"blob"
;
+ const char *type =
blob_type
;
int write_object = 0;
const char *prefix = NULL;
int prefix_length = -1;
int write_object = 0;
const char *prefix = NULL;
int prefix_length = -1;
@@
-53,9
+62,12
@@
int main(int argc, char **argv)
}
else if (!strcmp(argv[i], "--help"))
usage(hash_object_usage);
}
else if (!strcmp(argv[i], "--help"))
usage(hash_object_usage);
+ else if (!strcmp(argv[i], "--stdin")) {
+ hash_stdin(type, write_object);
+ }
else
die(hash_object_usage);
else
die(hash_object_usage);
- }
+ }
else {
const char *arg = argv[i];
if (0 <= prefix_length)
else {
const char *arg = argv[i];
if (0 <= prefix_length)