What's cooking (2008/07 #03)
Junio C Hamano committed
Aug 5, 2008 at 21:44 UTC
ff9d22a66a47a9f5bb68f503bec0eec60c57c29c
1 file changed
+111
-157
whats-cooking.txt
+111
-157
@@ -1,6 +1,6 @@
1
-Subject: What's cooking in git.git (Jul 2008, issue #02; Sun, 06)
1
+Subject: What's cooking in git.git (Jul 2008, issue #03; Mon, 07)
2
3
-What's cooking in git.git (Jul 2008, issue #02; Sun, 06)
3
+What's cooking in git.git (Jul 2008, issue #03; Mon, 07)
4
--------------------------------------------------------
5
6
Here are the topics that have been cooking. Commits prefixed
@@ -47,26 +47,49 @@ n
47
----------------------------------------------------------------
48
[New Topics]
49
50
-* js/maint-daemon-syslog (Thu Jul 3 16:27:24 2008 +0100) 1 commit
51
- - [PARKED improvement suggested not rolled in] git daemon: avoid
52
- calling syslog() from a signal handler
50
+* jc/rebase-orig-head (Mon Jul 7 00:16:38 2008 -0700) 1 commit
51
+ + Teach "am" and "rebase" to mark the original position with
52
+ ORIG_HEAD
53
54
-This will eventually appear in 'maint'; currently parked on 'pu', thoug=
55
-h.
54
+* sb/sequencer (Tue Jul 1 04:38:34 2008 +0200) 4 commits
55
+ . Migrate git-am to use git-sequencer
56
+ . Add git-sequencer test suite (t3350)
57
+ . Add git-sequencer prototype documentation
58
+ . Add git-sequencer shell prototype
59
57
-* jc/report-tracking (Sun Jul 6 02:54:56 2008 -0700) 5 commits
58
- - branch -r -v: do not spit out garbage
59
- + stat_tracking_info(): clear object flags used during counting
60
- + git-branch -v: show the remote tracking statistics
61
- + git-status: show the remote tracking statistics
62
- + Refactor "tracking statistics" code used by "git checkout"
60
+* js/pick-root (Fri Jul 4 16:19:52 2008 +0100) 1 commit
61
+ + Allow cherry-picking root commits
62
64
-Makes the "your branch is ahead of the tracked one by N commits" logic =
65
-and
66
-messages available to other commands; status and branch are updated.
63
+* ab/bundle (Sat Jul 5 17:26:40 2008 -0400) 1 commit
64
+ + Teach git-bundle to read revision arguments from stdin like git-
65
+ rev-list.
66
+
67
+----------------------------------------------------------------
68
+[Will merge to master soon]
69
+
70
+* js/apply-root (Sun Jul 6 18:36:01 2008 -0700) 3 commits
71
+ + git-apply --directory: make --root more similar to GNU diff
72
+ + apply --root: thinkofix.
73
+ + Teach "git apply" to prepend a prefix with "--root=3D<root>"
74
+
75
+* jc/reflog-expire (Sat Jun 28 22:24:49 2008 -0700) 2 commits
76
+ + Make default expiration period of reflog used for stash infinite
77
+ + Per-ref reflog expiry configuration
78
+
79
+As 1.6.0 will be a good time to make backward incompatible changes, the
80
+tip commit makes the default expiry period of stash 'never', unless you
81
+configure them to expire explicitly using gc.refs/stash.* variables.
82
+Needs consensus, but I am guessing that enough people would want stash
83
+that does not expire.
84
+
85
+* jk/pager-config (Thu Jul 3 07:46:57 2008 -0400) 1 commit
86
+ + Allow per-command pager config
87
+
88
+----------------------------------------------------------------
89
+[Actively Cooking]
90
91
* sg/stash-k-i (Fri Jun 27 16:37:15 2008 +0200) 1 commit
69
- - stash: introduce 'stash save --keep-index' option
92
+ + stash: introduce 'stash save --keep-index' option
93
94
One weakness of our "partial commit" workflow support used to be that t=
95
he
@@ -76,11 +99,14 @@ state cannot be tested as a whole in the working tree. This allows you=
99
to
100
temporarily stash the remaining changes in the working tree so that the
101
index state before running "stash save --keep-index" can be seen in the
79
-working tree to be tested and then committed. A recommended workflow t=
80
-o
81
-use after that commit is made needs to be documented (and support needs=
82
- to
83
-be added if necessary).
102
+working tree to be tested and then committed.
103
+
104
+* am/stash-branch (Mon Jul 7 02:50:10 2008 +0530) 2 commits
105
+ + Add a test for "git stash branch"
106
+ + Implement "git stash branch <newbranch> <stash>"
107
+
108
+Creates a new branch out of the stashed state, after returning from the
109
+interrupt that forced you to create the stash in the first place.
110
111
* tr/add-i-e (Thu Jul 3 00:00:00 2008 +0200) 3 commits
112
+ git-add--interactive: manual hunk editing mode
@@ -89,60 +115,75 @@ be added if necessary).
115
116
Adds 'e/dit' action to interactive add command.
117
92
-* am/stash-branch (Thu Jul 3 11:46:05 2008 +0530) 1 commit
93
- + Implement "git stash branch <newbranch> <stash>"
118
+* jc/report-tracking (Sun Jul 6 02:54:56 2008 -0700) 5 commits
119
+ + branch -r -v: do not spit out garbage
120
+ + stat_tracking_info(): clear object flags used during counting
121
+ + git-branch -v: show the remote tracking statistics
122
+ + git-status: show the remote tracking statistics
123
+ + Refactor "tracking statistics" code used by "git checkout"
124
95
-Creates a new branch out of the stashed state, after returning from the
96
-interrupt that forced you to create the stash in the first place.
125
+Makes the "your branch is ahead of the tracked one by N commits" logic =
126
+and
127
+messages available to other commands; status and branch are updated.
128
98
-* jc/grafts (Wed Jul 2 17:14:12 2008 -0700) 1 commit
99
- - Ignore graft during object transfer [broken wrt shallow clones]
129
+* jc/merge-theirs (Mon Jun 30 22:18:57 2008 -0700) 5 commits
130
+ + Make "subtree" part more orthogonal to the rest of merge-
131
+ recursive.
132
+ + Teach git-pull to pass -X<option> to git-merge
133
+ + Teach git-merge to pass -X<option> to the backend strategy module
134
+ + git-merge-recursive-{ours,theirs}
135
+ + git-merge-file --ours, --theirs
136
101
-Cloning or fetching from a repository from grafts did not send objects
102
-that are hidden by grafts, but the commits in the resulting repository =
103
-do
104
-need these to pass fsck. This fixes object transfer to ignore grafts.
137
+Punting a merge by discarding your own work in conflicting parts but st=
138
+ill
139
+salvaging the parts that are cleanly automerged. It is likely that thi=
140
+s
141
+will result in nonsense mishmash, but somehow often people want this, s=
142
+o
143
+here they are. The interface to the backends is updated so that you ca=
144
+n
145
+say "git merge -Xours -Xsubtree=3Dfoo/bar/baz -s recursive other" now.
146
106
-Another fix is needed to git-prune so that it ignores grafts but treats
107
-commits that are mentioned in grafts as reachable.
147
+The -X<option> part may change, Dscho mentions that a single-letter -X
148
+that take stuck option is against syntax rules, and I think he's right.
149
109
-* jk/pager-config (Thu Jul 3 07:46:57 2008 -0400) 1 commit
110
- - Allow per-command pager config
150
+This is more "because we can", not "because we need to".
151
+
152
+* mv/merge-in-c (Mon Jul 7 19:24:20 2008 +0200) 15 commits
153
+ - Build in merge
154
+ + Fix t7601-merge-pull-config.sh on AIX
155
+ + git-commit-tree: make it usable from other builtins
156
+ + Add new test case to ensure git-merge prepends the custom merge
157
+ message
158
+ + Add new test case to ensure git-merge reduces octopus parents when
159
+ possible
160
+ + Introduce reduce_heads()
161
+ + Introduce get_merge_bases_many()
162
+ + Add new test to ensure git-merge handles more than 25 refs.
163
+ + Introduce get_octopus_merge_bases() in commit.c
164
+ + git-fmt-merge-msg: make it usable from other builtins
165
+ + Move read_cache_unmerged() to read-cache.c
166
+ + Add new test to ensure git-merge handles pull.twohead and
167
+ pull.octopus
168
+ + Move parse-options's skip_prefix() to git-compat-util.h
169
+ + Move commit_list_count() to commit.c
170
+ + Move split_cmdline() to alias.c
171
172
----------------------------------------------------------------
113
-[Will merge to master soon]
173
+[Graduated to "master"]
174
175
* js/import-zip (Mon Jun 30 19:50:44 2008 +0100) 1 commit
176
+ Add another fast-import example, this time for .zip files
177
118
-* js/apply-root (Wed Jul 2 15:28:22 2008 -0700) 2 commits
119
- + apply --root: thinkofix.
120
- + Teach "git apply" to prepend a prefix with "--root=3D<root>"
121
-
178
* db/no-git-config (Mon Jun 30 03:37:47 2008 -0400) 1 commit
179
+ Only use GIT_CONFIG in "git config", not other programs
180
125
-* jc/reflog-expire (Sat Jun 28 22:24:49 2008 -0700) 2 commits
126
- + Make default expiration period of reflog used for stash infinite
127
- + Per-ref reflog expiry configuration
128
-
129
-As 1.6.0 will be a good time to make backward incompatible changes, the
130
-tip commit makes the default expiry period of stash 'never', unless you
131
-configure them to expire explicitly using gc.refs/stash.* variables.
132
-Needs consensus, but I am guessing that enough people would want stash
133
-that does not expire.
134
-
181
* dr/ceiling (Mon May 19 23:49:34 2008 -0700) 4 commits
182
+ Eliminate an unnecessary chdir("..")
183
+ Add support for GIT_CEILING_DIRECTORIES
184
+ Fold test-absolute-path into test-path-utils
185
+ Implement normalize_absolute_path
186
141
-This still feels "because we can", not "because we need to", but it cam=
142
-e
143
-from somebody who had the need to, and I do not think it hurts people
144
-without the environment variable set.
145
-
187
* jc/rerere (Sun Jun 22 02:04:31 2008 -0700) 5 commits
188
+ rerere.autoupdate
189
+ t4200: fix rerere test
@@ -153,85 +194,10 @@ without the environment variable set.
194
A new configuration will allow paths that have been resolved cleanly by
195
rerere to be updated in the index automatically.
196
156
-To me, this is "because we can", but was something requested by Ingo, s=
157
-o
158
-presumably some people may feel it useful in their workflow.
159
-
160
-----------------------------------------------------------------
161
-[Actively Cooking]
162
-
163
-* mv/merge-in-c (Tue Jul 1 04:37:50 2008 +0200) 15 commits
164
- - [REJECT -- over-abuse of path-list] Build in merge
165
- + Fix t7601-merge-pull-config.sh on AIX
166
- + git-commit-tree: make it usable from other builtins
167
- + Add new test case to ensure git-merge prepends the custom merge
168
- message
169
- + Add new test case to ensure git-merge reduces octopus parents when
170
- possible
171
- + Introduce reduce_heads()
172
- + Introduce get_merge_bases_many()
173
- + Add new test to ensure git-merge handles more than 25 refs.
174
- + Introduce get_octopus_merge_bases() in commit.c
175
- + git-fmt-merge-msg: make it usable from other builtins
176
- + Move read_cache_unmerged() to read-cache.c
177
- + Add new test to ensure git-merge handles pull.twohead and
178
- pull.octopus
179
- + Move parse-options's skip_prefix() to git-compat-util.h
180
- + Move commit_list_count() to commit.c
181
- + Move split_cmdline() to alias.c
182
-
183
-The last one is still not quite there, I am afraid.
184
-
185
-----------------------------------------------------------------
186
-[Graduated to "master"]
197
+* js/maint-daemon-syslog (Thu Jul 3 16:27:24 2008 +0100) 1 commit
198
+ + git daemon: avoid calling syslog() from a signal handler
199
188
-* j6t/mingw (Sat Nov 17 20:48:14 2007 +0100) 38 commits
189
- + compat/pread.c: Add a forward declaration to fix a warning
190
- + Windows: Fix ntohl() related warnings about printf formatting
191
- + Windows: TMP and TEMP environment variables specify a temporary
192
- directory.
193
- + Windows: Make 'git help -a' work.
194
- + Windows: Work around an oddity when a pipe with no reader is
195
- written to.
196
- + Windows: Make the pager work.
197
- + When installing, be prepared that template_dir may be relative.
198
- + Windows: Use a relative default template_dir and ETC_GITCONFIG
199
- + Windows: Compute the fallback for exec_path from the program
200
- invocation.
201
- + Turn builtin_exec_path into a function.
202
- + Windows: Use a customized struct stat that also has the st_blocks
203
- member.
204
- + Windows: Add a custom implementation for utime().
205
- + Windows: Add a new lstat and fstat implementation based on Win32
206
- API.
207
- + Windows: Implement a custom spawnve().
208
- + Windows: Implement wrappers for gethostbyname(), socket(), and
209
- connect().
210
- + Windows: Work around incompatible sort and find.
211
- + Windows: Implement asynchronous functions as threads.
212
- + Windows: Disambiguate DOS style paths from SSH URLs.
213
- + Windows: A rudimentary poll() emulation.
214
- + Windows: Implement start_command().
215
- + Windows: A pipe() replacement whose ends are not inherited to
216
- children.
217
- + Windows: Wrap execve so that shell scripts can be invoked.
218
- + Windows: Implement setitimer() and sigaction().
219
- + Windows: Fix PRIuMAX definition.
220
- + Windows: Implement gettimeofday().
221
- + Make my_mktime() public and rename it to tm_to_time_t()
222
- + Windows: Work around misbehaved rename().
223
- + Windows: always chmod(, 0666) before unlink().
224
- + Windows: A minimal implemention of getpwuid().
225
- + Windows: Implement a wrapper of the open() function.
226
- + Windows: Strip ".exe" from the program name.
227
- + Windows: Handle absolute paths in
228
- safe_create_leading_directories().
229
- + Windows: Treat Windows style path names.
230
- + setup.c: Prepare for Windows directory separators.
231
- + Windows: Use the Windows style PATH separator ';'.
232
- + Add target architecture MinGW.
233
- + Compile some programs only conditionally.
234
- + Add compat/regex.[ch] and compat/fnmatch.[ch].
200
+Meant for 'maint' as well.
201
202
----------------------------------------------------------------
203
[On Hold]
@@ -266,6 +232,17 @@ hit due to tcl/tk's limitation, so I am holding this back for now.
232
----------------------------------------------------------------
233
[Stalled/Needs more work]
234
235
+* jc/grafts (Wed Jul 2 17:14:12 2008 -0700) 1 commit
236
+ - [BROKEN wrt shallow clones] Ignore graft during object transfer
237
+
238
+Cloning or fetching from a repository from grafts did not send objects
239
+that are hidden by grafts, but the commits in the resulting repository =
240
+do
241
+need these to pass fsck. This fixes object transfer to ignore grafts.
242
+
243
+Another fix is needed to git-prune so that it ignores grafts but treats
244
+commits that are mentioned in grafts as reachable.
245
+
246
* ph/parseopt-step-blame (Tue Jun 24 11:12:12 2008 +0200) 7 commits
247
- Migrate git-blame to parse-option partially.
248
+ parse-opt: add PARSE_OPT_KEEP_ARGV0 parser option.
@@ -306,26 +283,3 @@ commit, which we should be able to separate out into an independent top=
283
ic
284
from the rest.
285
309
-* jc/merge-theirs (Mon Jun 30 22:18:57 2008 -0700) 5 commits
310
- + Make "subtree" part more orthogonal to the rest of merge-
311
- recursive.
312
- + Teach git-pull to pass -X<option> to git-merge
313
- + Teach git-merge to pass -X<option> to the backend strategy module
314
- + git-merge-recursive-{ours,theirs}
315
- + git-merge-file --ours, --theirs
316
-
317
-Punting a merge by discarding your own work in conflicting parts but st=
318
-ill
319
-salvaging the parts that are cleanly automerged. It is likely that thi=
320
-s
321
-will result in nonsense mishmash, but somehow often people want this, s=
322
-o
323
-here they are. The interface to the backends is updated so that you ca=
324
-n
325
-say "git merge -Xours -Xsubtree=3Dfoo/bar/baz -s recursive other" now.
326
-
327
-The -X<option> part may change, Dscho mentions that a single-letter -X
328
-that take stuck option is against syntax rules, and I think he's right.
329
-
330
-This is more "because we can", not "because we need to".
331
-