git/list[1] front-page[2] threads[3] people[4] search[5] about
 

What's cooking in git.git (topics)

From
Junio C Hamano <gitster@pobox.com>
Date
Dec 1, 2007, 02:37 UTC
Message-ID
<7vzlwv6sxr.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<7v4pfakr4j.fsf@gitster.siamese.dyndns.org>

Here are the topics that have been cooking. Commits prefixed with '-' are only in 'pu' while commits prefixed with '+' are in 'next'. The topics list the commits in reverse chronological order.

---------------------------------------------------------------- [Graduated to 'master']

* jk/maint-cvsimport-fix (Wed Nov 28 13:56:28 2007 -0500)

---------------------------------------------------------------- [New Topics]

* jc/api-doc (Sat Nov 24 23:48:04 2007 -0800) 1 commit
 - Start preparing the API documents.

The primary reason of this series is because I think we made the system a lot less approachable by losing hackability. Although we still have sample scripts in contrib/example for use of plumbing in scripts, they will not help aspiring git-hacker-wannabees when our primary attention has already shifted to moving things to C.

This currently consists of mostly stubs, although I wrote about a few topics as examples.

* js/fast-export (Sun Nov 25 22:37:20 2007 +0100) 1 commit
 - Add 'git fast-export', the sister of 'git fast-import'

This needs something like 9e42d6a1c53dadd409fab11cc76e0eba9ec15365 (sha1_file.c: Fix size_t related printf format warnings) to compile, I think, but I haven't tried to fix it (parked in pu)

* js/pull-rebase (Wed Nov 28 13:11:07 2007 +0000) 1 commit
 + Teach 'git pull' about --rebase
Resurrected from an old thread (thanks, Dscho and Nana for reminding).
* jk/builtin-alias (Fri Nov 30 11:22:58 2007 -0500) 1 commit
 + Support builtin aliases
Cute hack.  I'd like to have "git less" here.
* wc/rebase-insn (Sat Nov 24 00:38:50 2007 +1100) 2 commits
 + Mention that git-rm can be an appropriate resolution as well as
   git-add.
 + revert/cherry-pick: Allow overriding the help text by the calling
   Porcelain

Patches from Wincent and David Symonds. They both improve the help message upon conflicts.

* js/prune-expire (Thu Nov 29 20:59:55 2007 +0000) 1 commit
 + Add "--expire <time>" option to 'git prune'

This would help making unmonitored pruning jobs safer. The expiration does not kick in unless you explicitly ask, which is a suitable default for interactive session where the users who run "git prune" knows what they are doing.

* ew/svn (Thu Nov 22 13:44:42 2007 +0000) 4 commits
 - git-svn: add support for pulling author from From: and Signed-off-
   by:
 - git-svn: add a show-externals command.
 - git-svn now reads settings even if called in subdirectory
 - git-svn: Remove unnecessary Git::SVN::Util package

Picked up from the list with Eric's Acks, but haven't merged, as my next pull from Eric would hopefully bring them in anyway.

* mw/cvsserver (Fri Nov 23 04:12:54 2007 -0500) 1 commit
 - git-cvsserver runs hooks/post-receive

Queue in 'pu', but lacks a corresponding support for hooks/post-update, which we haven't declared deprecation.

* nd/dashless (Wed Nov 28 23:21:57 2007 +0700) 1 commit
 - Move all dashed-form commands to libexecdir

I think this is a sane thing to do in the longer term. Will be in 'next' after v1.5.4. I think "leave porcelain on PATH" might be also a good thing as a transition measure, but not strictly necessary. If we were to do so, I'd like to see a patch that consolidates the knowledge of what's Porcelain and what's common in one place before that. Currently:

 (1) generate-cmdlist.sh has its own built-in list for common command
     names to be used in "git help";
 (2) Documentation/cmd-list.perl has more comprehensive classification to
     generate git(7) manpage and git.html.  It needs to also know what's
     deprecated.
 (3) contrib/completion/git-completion.bash has a list of "uncommon
     commands", commands not to be shown to the user.

which is a mess. I think a good approach would be to separate the command list part from Documentation/cmd-list.perl script and move it to the toplevel, and have these three read from it. Maybe git-help command can learn "--classify" option to show that command list with classification, so that git-completion.bash and other scripts can use it without hardcoding the command list in.

Incidentally, if we do not install dashed form of built-ins anywhere (which is not this series is about --- this is just moving them out of user's PATH), "git help -a" will stop showing them. I am not enthused about removing the hardlinks to built-ins to begin with, but people who want such a change need to first modify help.c:list_commands() to pick up builtins without having git-foo hardlinks in gitexecdir. This may need to happen anyway as mingw fallouts, though ;-).

* jc/color (Tue Nov 27 22:41:05 2007 -0800) 2 commits
 + git-config --get-color: get configured color
 + "color.diff = true" is not "always" anymore.
Hopefully Dan's colored "git add -i" can rebuild on top of these.
* js/dashless (Fri Nov 30 12:08:20 2007 +0000) 1 commit
 - transport.c: call dash-less form of receive-pack and upload-pack
   on remote

Not field tested by anybody nor came with any tests, but this is an important component to move git-foo commands out of user's PATH.

* dc/gitweb (Mon Nov 26 20:42:06 2007 +0800) 1 commit
 - gitweb: the commitdiff is very commonly used, it's needed on
   search page, too
Queue in 'pu', waiting for Acks from gitweb guys.
* jc/docmake-perl (Fri Nov 30 15:48:17 2007 -0800) 1 commit
 - Run the specified perl in Documentation/
Queue in 'pu', waiting for Ack from Merlyn.

---------------------------------------------------------------- [Will cook further in 'next' and then merge to 'master' soon]

* cr/tag-options (Sun Nov 25 23:50:58 2007 -0500) 4 commits
 + git-tag: test that -s implies an annotated tag
 + "git-tag -s" should create a signed annotated tag
 + builtin-tag: accept and process multiple -m just like git-commit
 + Make builtin-tag.c use parse_options.
Will merge to 'master' over the weekend.
* jc/branch-contains (Sun Nov 18 22:22:00 2007 -0800) 3 commits
 + git-branch --contains: doc and test
 + git-branch --contains=commit
 + parse-options: Allow to hide options from the default usage.

Contains Pierre's "hidable options with --help-all" patch. Will merge to 'master' over the weekend.

* jc/move-gitk (Sat Nov 17 10:51:16 2007 -0800) 1 commit
 + Move gitk to its own subdirectory

I have a phoney Makefile under the subdirectory for gitk, but hopefully with the next pull from Paulus I can replace it with the real thing, along with the i18n stuff. Will merge to 'master' over the weekend.

* js/rebase-i-rerere (Thu Nov 22 11:18:10 2007 +0000) 1 commit
 + rebase -i: give rerere a chance

I haven't seen rerere kick in since I merged this to 'next' (which I almost always run). Success stories?

* tt/help (Sun Nov 11 19:57:57 2007 -0500) 2 commits
 + Remove hint to use "git help -a"
 + Make the list of common commands more exclusive

Some people on the list may find the exact list of commands somewhat debatable.

* kh/commit (Wed Nov 28 22:13:08 2007 +0100) 27 commits
 + Do not generate full commit log message if it is not going to be
   used
 + Remove git-status from list of scripts as it is builtin
 + Fix off-by-one error when truncating the diff out of the commit
   message.
 + builtin-commit.c: export GIT_INDEX_FILE for launch_editor as well.
 + Add a few more tests for git-commit
 + builtin-commit: Include the diff in the commit message when
   verbose.
 + builtin-commit: fix partial-commit support
 + Fix add_files_to_cache() to take pathspec, not user specified list
   of files
 + Export three helper functions from ls-files
 + builtin-commit: run commit-msg hook with correct message file
 + builtin-commit: do not color status output shown in the message
   template
 + file_exists(): dangling symlinks do exist
 + Replace "runstatus" with "status" in the tests
 + t7501-commit: Add test for git commit <file> with dirty index.
 + builtin-commit: Clean up an unused variable and a debug fprintf().
 + Call refresh_cache() when updating the user index for --only
   commits.
 + builtin-commit: Add newline when showing which commit was created
 + builtin-commit: resurrect behavior for multiple -m options
 + builtin-commit --s: add a newline if the last line was not a S-o-b
 + builtin-commit: fix --signoff
 + git status: show relative paths when run in a subdirectory
 + builtin-commit: Refresh cache after adding files.
 + builtin-commit: fix reflog message generation
 + launch_editor(): read the file, even when EDITOR=:
 + Port git commit to C.
 + Export launch_editor() and make it accept ':' as a no-op editor.
 + Add testcase for amending and fixing author in git commit.

Now comes with a few more fixes since the last issue of "What's in". This should be production ready, but commit is so central, so let's wait a bit longer until the bugfixes completely stop flowing in. The earliest will be next Wednesday.

* js/export-with-assignment (Wed Nov 28 15:56:11 2007 +0000) 1 commit
 + Replace instances of export VAR=VAL with VAR=VAL; export VAR

This will make scripts easier to read for traditionalists (that's me), at the same time working around a bug in BSD ash where VAL is word split if you write "export VAR=VAL".

---------------------------------------------------------------- [Actively cooking]

* jc/spht (Sat Nov 24 11:57:41 2007 -0800) 6 commits
 + core.whitespace: documentation updates.
 + builtin-apply: teach whitespace_rules
 + builtin-apply: rename "whitespace" variables and fix styles
 + core.whitespace: add test for diff whitespace error highlighting
 + git-diff: complain about >=8 consecutive spaces in initial indent
 + War on whitespace: first, a bit of retreat.

Now apply also knows about the customizable definition of what whitespace breakages are, and I was reasonably happy. But Bruce kicked it back from "scheduled to merge" to "still cooking" status, reminding that we would want to have this not a tree-wide configuration but per-path attribute. And I agree with him.

* wc/add-i (Thu Nov 29 13:00:38 2007 +0100) 32 commits
 + Highlight keyboard shortcuts in git-add--interactive
 + Document all help keys in "git add -i" patch mode.
 + Add "--patch" option to git-add--interactive
 + add -i: Fix running from a subdirectory
 + builtin-add: fix command line building to call interactive
 + Merge branch 'kh/commit' into wc/add-i
 + Add a few more tests for git-commit
 + git-add -i: allow multiple selection in patch subcommand
 + builtin-commit: Include the diff in the commit message when
   verbose.
 + builtin-commit: fix partial-commit support
 + Fix add_files_to_cache() to take pathspec, not user specified list
   of files
 + Export three helper functions from ls-files
 + builtin-commit: run commit-msg hook with correct message file
 + builtin-commit: do not color status output shown in the message
   template
 + file_exists(): dangling symlinks do exist
 + Replace "runstatus" with "status" in the tests
 + t7501-commit: Add test for git commit <file> with dirty index.
 + builtin-commit: Clean up an unused variable and a debug fprintf().
 + Call refresh_cache() when updating the user index for --only
   commits.
 + builtin-commit: Add newline when showing which commit was created
 + builtin-commit: resurrect behavior for multiple -m options
 + builtin-commit --s: add a newline if the last line was not a S-o-b
 + builtin-commit: fix --signoff
 + git status: show relative paths when run in a subdirectory
 + builtin-commit: Refresh cache after adding files.
 + builtin-commit: fix reflog message generation
 + launch_editor(): read the file, even when EDITOR=:
 + Port git commit to C.
 + Export launch_editor() and make it accept ':' as a no-op editor.
 + Add testcase for amending and fixing author in git commit.
 + Add path-limiting to git-add--interactive
 + Teach builtin-add to pass multiple paths to git-add--interactive

This looks larger than it really is, as I merged in the builtin commit series near the tip (they interact with each other somewhat, and it is very likely that builtin commit series will graduate to 'master' before this series).

* sp/refspec-match (Sun Nov 11 15:01:48 2007 +0100) 4 commits
 + refactor fetch's ref matching to use refname_match()
 + push: use same rules as git-rev-parse to resolve refspecs
 + add refname_match()
 + push: support pushing HEAD to real branch name

I think the "git push HEAD" is a good change, and also using the same short refname resolving as rev-parse does for matching the destination of push. I am having second thoughts on the last one. The changed semantics is somewhat less safe:

    * We did not allow fetching outside refs/ (except HEAD), but now we
      allow any random string.
    * We used to restrict fetching names that do not begin with refs/ to
      heads, tags and remotes, but now the code grabs anything underneath
      refs/.
which could invite mistakes by letting typos slip through.

Having said that, I probably "fetch" much less often than other people do and these may be non issues in the real-world usecases. It could be that I am worried too much needlessly. If anybody who is following 'next' has been bitten by the change, please speak up.

* nd/maint-work-tree-fix (Thu Nov 29 19:21:39 2007 +0700) 2 commits
 + Do check_repository_format() early
 + Add missing inside_work_tree setting in setup_git_directory_gently
The tip one needs test script.

---------------------------------------------------------------- [Stalled]

I've dropped a few topics that did not see actions recently.
* js/reflog-delete (Wed Oct 17 02:50:45 2007 +0100) 1 commit
 + Teach "git reflog" a subcommand to delete single entries
* dz/color-addi (Sat Nov 10 18:03:44 2007 -0600) 3 commits
 - Added diff hunk coloring to git-add--interactive
 - Let git-add--interactive read colors from .gitconfig
 - Added basic color support to git add --interactive

There were many good suggestions by Jeff to the updated series; hopefully we can have replacements of these three that incorporate Jeff's suggestions, and build on the "git-config --get-color" series.

* jc/diff-pathspec (Sun Nov 25 10:03:48 2007 -0800) 1 commit
 - Making ce_path_match() more useful by accepting globs

This was to allow "git diff-files -- '*.h'" (currently diff family knows only the leading directory match and not fileglobs), but was shot down by Alex. I tend to agree with him.

Previous: J. Bruce FieldsNext: Eric Wong
Message 131 of 168 in “What's cooking in git/spearce.git (topics)”
  1. Shawn O. PearceOct 22, 2007
  2. Jeff KingOct 22, 2007
  3. Jeff KingOct 22, 2007
  4. Linus TorvaldsOct 23, 2007
  5. Jeff KingOct 23, 2007
  6. Pierre HabouzitOct 22, 2007
  7. Steffen ProhaskaOct 22, 2007
  8. Junio C HamanoOct 23, 2007
  9. Shawn O. PearceOct 23, 2007
  10. What's cooking in git.git (topics)Junio C Hamano, Oct 24, 2007
  11. David SymondsOct 24, 2007
  12. Scott ParishOct 24, 2007
  13. Andreas EricssonOct 24, 2007
  14. Scott ParishOct 25, 2007
  15. What's cooking in git.git (topics)Junio C Hamano, Nov 1, 2007
  16. Jakub NarebskiNov 1, 2007
  17. Junio C HamanoNov 1, 2007
  18. Linus TorvaldsNov 1, 2007
  19. Geert BoschNov 1, 2007
  20. Junio C HamanoNov 1, 2007
  21. Mike HommeyNov 1, 2007
  22. Junio C HamanoNov 1, 2007
  23. Junio C HamanoNov 2, 2007
  24. Pierre HabouzitNov 1, 2007
  25. Geert BoschNov 1, 2007
  26. Jonas FonsecaNov 2, 2007
  27. Theodore TsoNov 1, 2007
  28. Melchior FRANZNov 1, 2007
  29. Johan HerlandNov 1, 2007
  30. Junio C HamanoNov 1, 2007
  31. Linus TorvaldsNov 1, 2007
  32. Bill LearNov 1, 2007
  33. Junio C HamanoNov 1, 2007
  34. Petr BaudisNov 2, 2007
  35. Pierre HabouzitNov 1, 2007
  36. Andreas EricssonNov 2, 2007
  37. Pierre HabouzitNov 1, 2007
  38. Jakub NarebskiNov 2, 2007
  39. Petr BaudisNov 2, 2007
  40. Jakub NarebskiNov 2, 2007
  41. Jakub NarebskiNov 2, 2007
  42. Pierre HabouzitNov 2, 2007
  43. Miles BaderNov 2, 2007
  44. Miles BaderNov 2, 2007
  45. Andreas EricssonNov 2, 2007
  46. Johannes SchindelinNov 2, 2007
  47. Brian DowningNov 1, 2007
  48. Pierre HabouzitNov 1, 2007
  49. Wincent ColaiutaNov 2, 2007
  50. What's cooking in git.git (topics)Junio C Hamano, Nov 4, 2007
  51. Jakub NarebskiNov 4, 2007
  52. Pierre HabouzitNov 4, 2007
  53. What's cooking in git.git (topics)Junio C Hamano, Nov 8, 2007
  54. Steffen ProhaskaNov 8, 2007
  55. What's cooking in git.git (topics)Junio C Hamano, Nov 12, 2007
  56. Johannes SchindelinNov 12, 2007
  57. Pierre HabouzitNov 12, 2007
  58. Johannes SchindelinNov 12, 2007
  59. rebase: brown paper bag fix after the detached HEAD patchJohannes Schindelin, Nov 12, 2007
  60. Pierre HabouzitNov 12, 2007
  61. Steffen ProhaskaNov 12, 2007
  62. Johannes SchindelinNov 12, 2007
  63. 1/2 push: Add '--matching' option and print warning if it should be usedSteffen Prohaska, Nov 18, 2007
  64. 2/2 push: Add '--current', which pushes only the current branchSteffen Prohaska, Nov 18, 2007
  65. Junio C HamanoNov 19, 2007
  66. Steffen ProhaskaNov 19, 2007
  67. Junio C HamanoNov 19, 2007
  68. Junio C HamanoNov 19, 2007
  69. Andreas EricssonNov 19, 2007
  70. Steffen ProhaskaNov 19, 2007
  71. Junio C HamanoNov 19, 2007
  72. Steffen ProhaskaNov 19, 2007
  73. push: Add "--current", which pushes only the current branchSteffen Prohaska, Nov 19, 2007
  74. Jakub NarebskiNov 19, 2007
  75. Junio C HamanoNov 19, 2007
  76. Jakub NarebskiNov 19, 2007
  77. Junio C HamanoNov 19, 2007
  78. Jakub NarebskiNov 19, 2007
  79. Andreas EricssonNov 19, 2007
  80. git-commit: Add tests for invalid usage of -a/--interactive with pathsBjörn Steinbrink, Nov 12, 2007
  81. What's cooking in git.git (topics)Junio C Hamano, Nov 15, 2007
  82. Johannes SchindelinNov 15, 2007
  83. t7501-commit: Add test for git commit <file> with dirty index.Kristian Høgsberg, Nov 15, 2007
  84. Johannes SchindelinNov 15, 2007
  85. builtin-commit: fix "git add x y && git commit y" committing x, tooJohannes Schindelin, Nov 15, 2007
  86. Johannes SchindelinNov 15, 2007
  87. Kristian HøgsbergNov 15, 2007
  88. Johannes SchindelinNov 16, 2007
  89. Junio C HamanoNov 17, 2007
  90. Junio C HamanoNov 18, 2007
  91. Jeff KingNov 17, 2007
  92. What's cooking in git.git (topics)Junio C Hamano, Nov 17, 2007
  93. Alex RiesenNov 17, 2007
  94. Junio C HamanoNov 18, 2007
  95. What's cooking in git.git (topics)Junio C Hamano, Nov 21, 2007
  96. What's cooking in git.git (topics)Junio C Hamano, Nov 23, 2007
  97. Jeff KingNov 23, 2007
  98. Johannes SchindelinNov 23, 2007
  99. Jeff KingNov 24, 2007
  100. Nicolas PitreNov 24, 2007
  101. Junio C HamanoNov 24, 2007
  102. J. Bruce FieldsNov 25, 2007
  103. Junio C HamanoNov 25, 2007
  104. J. Bruce FieldsNov 25, 2007
  105. Nicolas PitreNov 26, 2007
  106. J. Bruce FieldsNov 26, 2007
  107. Nicolas PitreNov 26, 2007
  108. J. Bruce FieldsNov 26, 2007
  109. Jakub NarebskiNov 26, 2007
  110. Andreas EricssonNov 26, 2007
  111. Nicolas PitreNov 26, 2007
  112. David KastrupNov 26, 2007
  113. Nicolas PitreNov 26, 2007
  114. Junio C HamanoNov 26, 2007
  115. David KastrupNov 26, 2007
  116. Nicolas PitreNov 26, 2007
  117. David KastrupNov 26, 2007
  118. Nicolas PitreNov 26, 2007
  119. David KastrupNov 26, 2007
  120. Nicolas PitreNov 26, 2007
  121. David KastrupNov 26, 2007
  122. Nicolas PitreNov 27, 2007
  123. Miles BaderDec 5, 2007
  124. Jakub NarebskiNov 26, 2007
  125. Johannes SchindelinNov 26, 2007
  126. Nicolas PitreNov 26, 2007
  127. Jan HudecNov 26, 2007
  128. What's cooking in git.git (topics)Junio C Hamano, Nov 25, 2007
  129. Jakub NarebskiNov 25, 2007
  130. J. Bruce FieldsNov 25, 2007
  131. What's cooking in git.git (topics)Junio C Hamano, Dec 1, 2007
  132. Eric WongDec 1, 2007
  133. Add 'git fast-export', the sister of 'git fast-import'Johannes Schindelin, Dec 2, 2007
  134. Johannes SchindelinDec 2, 2007
  135. What's cooking in git.git (topics)Junio C Hamano, Dec 4, 2007
  136. Johannes SixtDec 4, 2007
  137. msysGit on FAT32 (was: What's cooking in git.git (topics))Jakub Narebski, Dec 4, 2007
  138. Johannes SchindelinDec 4, 2007
  139. Johannes SixtDec 4, 2007
  140. Johannes SchindelinDec 4, 2007
  141. Steffen ProhaskaDec 4, 2007
  142. What's cooking in git.git (topics)Junio C Hamano, Dec 5, 2007
  143. Jakub NarebskiDec 5, 2007
  144. Jakub NarebskiDec 5, 2007
  145. Jeff KingDec 6, 2007
  146. Soft aliases: add "less" and minimal documentationJohannes Schindelin, Dec 5, 2007
  147. Junio C HamanoDec 5, 2007
  148. Jeff KingDec 6, 2007
  149. Jeff KingDec 6, 2007
  150. What's cooking in git.git (topics)Junio C Hamano, Dec 7, 2007
  151. Jakub NarebskiDec 7, 2007
  152. Junio C HamanoDec 7, 2007
  153. Miklos VajnaDec 7, 2007
  154. What's cooking in git.git (topics)Junio C Hamano, Dec 9, 2007
  155. What's cooking in git.git (topics)Junio C Hamano, Dec 13, 2007
  156. Nicolas PitreDec 13, 2007
  157. 1/2 xdl_diff: identify call sites.Junio C Hamano, Dec 13, 2007
  158. Junio C HamanoDec 14, 2007
  159. 2/2 xdi_diff: trim common trailing linesJunio C Hamano, Dec 13, 2007
  160. Peter BaumannDec 14, 2007
  161. Junio C HamanoDec 14, 2007
  162. What's cooking in git.git (topics)Junio C Hamano, Dec 17, 2007
  163. What's cooking in git.git (topics)Junio C Hamano, Dec 23, 2007
  164. checkout --push/--pop idea (Re: What's cooking in git.git (topics))Jan Hudec, Dec 31, 2007
  165. What's cooking in git.git (topics)Junio C Hamano, Jan 5, 2008
  166. Johannes SchindelinJan 5, 2008
  167. What will be cooking in git.git post 1.5.4 (topics)Junio C Hamano, Jan 22, 2008
  168. Brian DowningDec 4, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.