Anonymous committed e99c2fb Merge

GIT 1.0.10

Comments (0)

Files changed (8)


-	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


 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.
 Written by Junio C Hamano <> and Linus Torvalds <>
 Part of the gitlink:git[7] suite


 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
 # Define USE_STDEV below if you want git to care about the underlying device
 # change being considered an inode change from the update-cache perspective.
-GIT_VERSION = 1.0.8
+GIT_VERSION = 1.0.10
 # CFLAGS and LDFLAGS are for the users to override from the command line.
 	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);
 		append_ref(av, revkey);
-	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;


 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"'
 		struct strbuf buf;
 		while (1) {
+			char *path_name;
 			read_line(&buf, stdin, line_termination);
 			if (buf.eof)
-			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) {
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.