GIT 1.1.2

This commit is contained in:
Junio C Hamano 2006-01-13 16:47:05 -08:00
commit 59617ebb74
9 changed files with 52 additions and 15 deletions

1
.gitignore vendored
View file

@ -28,6 +28,7 @@ git-diff-files
git-diff-index
git-diff-stages
git-diff-tree
git-describe
git-fetch
git-fetch-pack
git-findtags

View file

@ -25,7 +25,9 @@ information.
OPTIONS
-------
-a|--all::
Update all paths in the index file.
Update all paths in the index file. This flag notices
files that have been modified and deleted, but new files
you have not told about git are not affected.
-c or -C <commit>::
Take existing commit object, and reuse the log message

View file

@ -145,6 +145,32 @@ brings your index file and the working tree back to that state,
and resets the tip of the branch to that commit.
------------
Interrupted workflow::
+
You can get interrupted by an ungent fix request while you are
still in the middle of a large change. The files in your
working tree are not in any shape to be committed yet, but you
need to get to the other branch for a quick bugfix.
+
------------
$ git checkout feature ;# you were working in "feature" branch and
$ work work work ;# got interrupted
$ git commit -a -m 'snapshot WIP' <1>
$ git checkout master
$ fix fix fix
$ git commit ;# commit with real log
$ git checkout feature
$ git reset --soft HEAD^ ;# go back to WIP state <2>
$ git reset <3>
<1> This commit will get blown away so a throw-away log message is OK.
<2> This removes the 'WIP' commit from the commit history, and makes
your working tree in the state just before you made that snapshot.
<3> After <2>, the index file still has all the WIP changes you
committed in <1>. This sets it to the last commit you were
basing the WIP changes on.
------------
Author
------
Written by Junio C Hamano <junkio@cox.net> and Linus Torvalds <torvalds@osdl.org>
@ -156,4 +182,3 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the gitlink:git[7] suite

View file

@ -134,9 +134,9 @@ is often useful.
+
Some short-cut notations are also supported.
+
* For backward compatibility, `tag` is almost ignored;
it just makes the following parameter <tag> to mean a
refspec `refs/tags/<tag>:refs/tags/<tag>`.
* `tag <tag>` means the same as `refs/tags/<tag>:refs/tags/<tag>`;
used with pull or fetch, it requests fetching everything up to
the given tag.
* A parameter <ref> without a colon is equivalent to
<ref>: when pulling/fetching, and <ref>`:`<ref> when
pushing. That is, do not store it locally if

View file

@ -124,10 +124,11 @@ static void describe(struct commit *cmit)
if (n) {
printf("%s-g%s\n", n->path,
find_unique_abbrev(cmit->object.sha1, abbrev));
break;
clear_commit_marks(cmit, SEEN);
return;
}
}
clear_commit_marks(cmit, SEEN);
die("cannot describe '%s'", sha1_to_hex(cmit->object.sha1));
}
int main(int argc, char **argv)

View file

@ -93,10 +93,11 @@ static int name_ref(const char *path, const unsigned char *sha1)
}
if (o && o->type == commit_type) {
struct commit *commit = (struct commit *)o;
const char *p;
while ((p = strchr(path, '/')))
path = p+1;
if (!strncmp(path, "refs/heads/", 11))
path = path + 11;
else if (!strncmp(path, "refs/", 5))
path = path + 5;
name_rev(commit, strdup(path), 0, 0, deref);
}

View file

@ -492,7 +492,7 @@ static void append_one_rev(const char *av)
append_ref(av, revkey);
return;
}
if (strchr(av, '*') || strchr(av, '?')) {
if (strchr(av, '*') || strchr(av, '?') || strchr(av, '[')) {
/* glob style match */
int saved_matches = ref_name_cnt;
match_ref_pattern = av;

View file

@ -46,14 +46,14 @@ H=$(doit 8 H $A $F)
test_expect_success 'compute merge-base (single)' \
'MB=$(git-merge-base G H) &&
expr "$(git-name-rev "$MB")" : "[0-9a-f]* B"'
expr "$(git-name-rev "$MB")" : "[0-9a-f]* tags/B"'
test_expect_success 'compute merge-base (all)' \
'MB=$(git-merge-base --all G H) &&
expr "$(git-name-rev "$MB")" : "[0-9a-f]* B"'
expr "$(git-name-rev "$MB")" : "[0-9a-f]* tags/B"'
test_expect_success 'compute merge-base with show-branch' \
'MB=$(git-show-branch --merge-base G H) &&
expr "$(git-name-rev "$MB")" : "[0-9a-f]* B"'
expr "$(git-name-rev "$MB")" : "[0-9a-f]* tags/B"'
test_done

View file

@ -534,10 +534,17 @@ int main(int argc, const char **argv)
struct strbuf buf;
strbuf_init(&buf);
while (1) {
char *path_name;
read_line(&buf, stdin, line_termination);
if (buf.eof)
break;
update_one(buf.buf, prefix, prefix_length);
if (line_termination && buf.buf[0] == '"')
path_name = unquote_c_style(buf.buf, NULL);
else
path_name = buf.buf;
update_one(path_name, prefix, prefix_length);
if (path_name != buf.buf)
free(path_name);
}
}
if (active_cache_changed) {