aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2006-03-22 00:52:41 -0800
committerJunio C Hamano <junkio@cox.net>2006-03-22 00:52:41 -0800
commit8ff8eea016f27d22d0264b140843470c7f14e004 (patch)
treeb80e5a591c003bd82a16980bb2fb4bb8b6fa259a
parentMerge branch 'jc/clone' into next (diff)
parentrev-list --timestamp (diff)
downloadgit-8ff8eea016f27d22d0264b140843470c7f14e004.tar.gz
git-8ff8eea016f27d22d0264b140843470c7f14e004.zip
Merge branch 'jc/revlist' into next
* jc/revlist: rev-list --timestamp git-apply: do not barf when updating an originally empty file. http-push.c: squelch C90 warnings. fix field width/precision warnings in blame.c
-rw-r--r--apply.c2
-rw-r--r--blame.c2
-rw-r--r--http-push.c20
-rw-r--r--rev-list.c11
4 files changed, 24 insertions, 11 deletions
diff --git a/apply.c b/apply.c
index 179b3bbd00..2da225a8ec 100644
--- a/apply.c
+++ b/apply.c
@@ -834,7 +834,7 @@ static int parse_fragment(char *line, unsigned long size, struct patch *patch, s
patch->new_name = NULL;
}
- if (patch->is_new != !oldlines)
+ if (patch->is_new && oldlines)
return error("new file depends on old contents");
if (patch->is_delete != !newlines) {
if (newlines)
diff --git a/blame.c b/blame.c
index 9c97aeca45..7e88833a37 100644
--- a/blame.c
+++ b/blame.c
@@ -748,7 +748,7 @@ int main(int argc, const char **argv)
struct commit_info ci;
const char *buf;
int max_digits;
- size_t longest_file, longest_author;
+ int longest_file, longest_author;
int found_rename;
const char* prefix = setup_git_directory();
diff --git a/http-push.c b/http-push.c
index b35d400ee1..21c5289cde 100644
--- a/http-push.c
+++ b/http-push.c
@@ -1863,6 +1863,7 @@ static void one_remote_ref(char *refname)
struct ref *ref;
unsigned char remote_sha1[20];
struct object *obj;
+ int len = strlen(refname) + 1;
if (fetch_ref(refname, remote_sha1) != 0) {
fprintf(stderr,
@@ -1884,7 +1885,6 @@ static void one_remote_ref(char *refname)
}
}
- int len = strlen(refname) + 1;
ref = xcalloc(1, sizeof(*ref) + len);
memcpy(ref->old_sha1, remote_sha1, 20);
memcpy(ref->name, refname, len);
@@ -2313,6 +2313,8 @@ int main(int argc, char **argv)
int objects_to_send;
int rc = 0;
int i;
+ int new_refs;
+ struct ref *ref;
setup_git_directory();
setup_ident();
@@ -2347,8 +2349,8 @@ int main(int argc, char **argv)
}
}
if (!remote->url) {
- remote->url = arg;
char *path = strstr(arg, "//");
+ remote->url = arg;
if (path) {
path = index(path+2, '/');
if (path)
@@ -2421,10 +2423,13 @@ int main(int argc, char **argv)
return 0;
}
- int new_refs = 0;
- struct ref *ref;
+ new_refs = 0;
for (ref = remote_refs; ref; ref = ref->next) {
char old_hex[60], *new_hex;
+ const char *commit_argv[4];
+ int commit_argc;
+ char *new_sha1_hex, *old_sha1_hex;
+
if (!ref->peer_ref)
continue;
if (!memcmp(ref->old_sha1, ref->peer_ref->new_sha1, 20)) {
@@ -2482,10 +2487,9 @@ int main(int argc, char **argv)
}
/* Set up revision info for this refspec */
- const char *commit_argv[4];
- int commit_argc = 3;
- char *new_sha1_hex = strdup(sha1_to_hex(ref->new_sha1));
- char *old_sha1_hex = NULL;
+ commit_argc = 3;
+ new_sha1_hex = strdup(sha1_to_hex(ref->new_sha1));
+ old_sha1_hex = NULL;
commit_argv[1] = "--objects";
commit_argv[2] = new_sha1_hex;
if (!push_all && !is_zero_sha1(ref->old_sha1)) {
diff --git a/rev-list.c b/rev-list.c
index 812d237f47..441c437855 100644
--- a/rev-list.c
+++ b/rev-list.c
@@ -40,13 +40,18 @@ static int bisect_list = 0;
static int verbose_header = 0;
static int abbrev = DEFAULT_ABBREV;
static int show_parents = 0;
+static int show_timestamp = 0;
static int hdr_termination = 0;
static const char *commit_prefix = "";
static enum cmit_fmt commit_format = CMIT_FMT_RAW;
static void show_commit(struct commit *commit)
{
- printf("%s%s", commit_prefix, sha1_to_hex(commit->object.sha1));
+ if (show_timestamp)
+ printf("%lu ", commit->date);
+ if (commit_prefix[0])
+ fputs(commit_prefix, stdout);
+ fputs(sha1_to_hex(commit->object.sha1), stdout);
if (show_parents) {
struct commit_list *parents = commit->parents;
while (parents) {
@@ -335,6 +340,10 @@ int main(int argc, const char **argv)
show_parents = 1;
continue;
}
+ if (!strcmp(arg, "--timestamp")) {
+ show_timestamp = 1;
+ continue;
+ }
if (!strcmp(arg, "--bisect")) {
bisect_list = 1;
continue;