{"thread":{"id":"10419","subject":"What's in git/spearce.git (stable)","startedAt":"2007-10-22T06:11:15Z","lastAt":"2008-01-07T22:14:18Z","messageCount":72,"participants":["Shawn O. Pearce","Junio C Hamano","Pierre Habouzit","Jeff King","Nicolas Pitre","Andreas Ericsson","Johannes Schindelin","Kristian Høgsberg","Eric Wong","David D. Kilzer","Johannes Sixt","Steffen Prohaska","Dan McGee","Paul Mackerras","Christian Stimming"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"56821","messageId":"20071022061115.GR14735@spearce.org","threadId":"10419","inReplyTo":null,"subject":"What's in git/spearce.git (stable)","fromName":"Shawn O. Pearce","fromEmail":"spearce@spearce.org","sentAt":"2007-10-22T06:11:15Z","receivedAt":"2007-10-22T06:11:15Z","isPatch":false,"sender":{"key":"spearce@spearce.org","avatar":"https://avatars.githubusercontent.com/u/34844?v=4"},"body":"For those who may be new to the git/spearce.git concept I'm filling\nin for Junio and have published a tree on repo.or.cz:\n\n  git://repo.or.cz/git/spearce.git\n  http://repo.or.cz/r/git/spearce.git\n\n------\n\n* The 'maint' branch has these fixes since the last announcement.\n\nAlex Bennee (1):\n  Ensure we add directories in the correct order\n\nAndrew Clausen (1):\n  helpful error message when send-pack finds no refs in common.\n\nBrian Gernhardt (1):\n  cvsserver: Use exit 1 instead of die when req_Root fails.\n\nGerrit Pape (1):\n  git-config: print error message if the config file cannot be read\n\nJeff King (1):\n  send-pack: respect '+' on wildcard refspecs\n\nJoakim Tjernlund (1):\n  Improve receive-pack error message about funny ref creation\n\nJohannes Schindelin (3):\n  Fix setup_git_directory_gently() with relative GIT_DIR &\n      GIT_WORK_TREE\n  fix filter-branch documentation\n  filter-branch: update current branch when rewritten\n\nJulian Phillips (1):\n  fast-import: Fix argument order to die in file_change_m\n\nLinus Torvalds (4):\n  git-blame shouldn't crash if run in an unmerged tree\n  Avoid scary errors about tagged trees/blobs during git-fetch\n  Fix directory scanner to correctly ignore files without d_type\n  Fix diffcore-break total breakage\n\nPatrick Welche (1):\n  Define NI_MAXSERV if not defined by operating system\n\nRalf Wildenhues (1):\n  gitk.txt: Fix markup.\n\nRobert Schiele (1):\n  fixing output of non-fast-forward output of post-receive-email\n\nShawn O. Pearce (16):\n  git-gui: Display message box when we cannot find git in $PATH\n  git-gui: Handle starting on mapped shares under Cygwin\n  git-gui: Ensure .git/info/exclude is honored in Cygwin workdirs\n  git-gui: Allow gitk to be started on Cygwin with native Tcl/Tk\n  git-gui: Don't crash when starting gitk from a browser session\n  Correct typos in release notes for 1.5.3.5\n  Avoid 'expr index' on Mac OS X as it isn't supported\n  Document additional 1.5.3.5 fixes in release notes\n  Yet more 1.5.3.5 fixes mentioned in release notes\n  Avoid invoking diff drivers during git-stash\n  Further 1.5.3.5 fixes described in release notes\n  Paper bag fix diff invocation in 'git stash show'\n  git-gui: Correctly report failures from git-write-tree\n  git-gui: Handle progress bars from newer gits\n  git-gui: Don't display CR within console windows\n  Describe more 1.5.3.5 fixes in release notes\n\nSimon Sasburg (1):\n  git-gui: Avoid using bold text in entire gui for some fonts\n\nSteffen Prohaska (2):\n  git-gui: accept versions containing text annotations, like\n      1.5.3.mingw.1\n  attr: fix segfault in gitattributes parsing code\n\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nBenoit Sigoure (5):\n  git-svn: add a generic tree traversal to fetch SVN properties\n  git-svn: implement git svn create-ignore\n  git-svn: add git svn propget\n  git-svn: add git svn proplist\n  git-svn: simplify the handling of fatal errors\n\nChris Pettitt (1):\n  git-p4 support for perforce renames.\n\nEygene Ryabinkin (1):\n  git-svn: use \"no warnings 'once'\" to disable false-positives\n\nJeff King (3):\n  git-gc: improve wording of --auto notification\n  Documentation/git-gc: explain --auto in description\n  Documentation/git-gc: improve description of --auto\n\nJohannes Schindelin (1):\n  Deduce exec_path also from calls to git with a relative path\n\nJohannes Sixt (1):\n  gitk: Do not pick up file names of \"copy from\" lines\n\nJonathan del Strother (1):\n  gitk: Add support for OS X mouse wheel\n\nJunio C Hamano (2):\n  git-am: make the output quieter.\n  git-am: fix typo in the previous one.\n\nLinus Torvalds (1):\n  optimize diffcore-delta by sorting hash entries.\n\nLuke Lu (1):\n  gitweb: speed up project listing on large work trees by limiting\n      find depth\n\nMarius Storm-Olsen (1):\n  Teach core.autocrlf to 'git blame'\n\nMichael Witten (1):\n  git-cvsexportcommit.perl: git-apply no longer needs --binary\n\nPaul Mackerras (3):\n  gitk: Check that we are running on at least Tcl/Tk 8.4\n  gitk: Avoid an error when cherry-picking if HEAD has moved on\n  gitk: Fix \"can't unset prevlines(...)\" Tcl error\n\nRalf Wildenhues (1):\n  git-cherry-pick: improve description of -x.\n\nRené Scharfe (1):\n  Correct some sizeof(size_t) != sizeof(unsigned long) typing errors\n\nSam Vilain (1):\n  gitk: disable colours when calling git log\n\nShawn O. Pearce (2):\n  Improved const correctness for strings\n  Use PRIuMAX instead of 'unsigned long long' in show-index\n\nSimon Hausmann (1):\n  git-p4: When skipping a patch as part of \"git-p4 submit\" make sure\n      we correctly revert to the previous state of the files using\n      \"p4 revert\".\n\nkoreth@midwinter.com (1):\n  Add a message explaining that automatic GC is about to start\n"},{"id":"57783","messageId":"7vodeecyni.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"20071022061115.GR14735@spearce.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-11-01T05:39:29Z","receivedAt":"2007-11-01T05:39:29Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"* The 'maint' branch has just produced the 1.5.3.5 release.\n\n* The 'master' branch has these since the last announcement\n  in addition to what's in 1.5.3.5.\n\n  - git-bisect enhancements to support \"git bisect skip\".\n  - git-fetch rewritten in C for performance and portability.\n  - git-svnimport is no more --- use git-svn.\n  - git-send-pack does not update the tracking ref on the local\n    side for failed push (needs cherry-picking to 'maint').\n  - git-rebase does not choke when $GIT_DIR has whitespace in it\n    (needs cherry-picking to 'maint').\n  - optimize rename detection.\n  - comes with updated gitk.\n\n  The above list makes me realize that it probably is a good\n  time to start freezing things for 1.5.4.  Tonight's \"What's\n  cooking\" will talk about what other topics should graduate to\n  'master' before that happens.\n\nAlex Riesen (1):\n  Fix a crash in ls-remote when refspec expands into nothing\n\nAlexandre Julliard (4):\n  git.el: Fix typo in \"Reverted file\" message.\n  git.el: Fix typo in git-update-saved-file error handling.\n  git.el: Refresh only the changed file marks when marking/unmarking\n      all.\n  git.el: Run git-gc --auto after commits.\n\nBenoit Sigoure (1):\n  core-tutorial: Catch up with current Git\n\nChristian Couder (12):\n  Test suite: reset TERM to its previous value after testing.\n  rev-list: implement --bisect-all\n  rev-list documentation: add \"--bisect-all\".\n  Bisect: fix some white spaces and empty lines breakages.\n  Bisect: implement \"bisect skip\" to mark untestable revisions.\n  Bisect: refactor \"bisect_write_*\" functions.\n  Bisect: refactor some logging into \"bisect_write\".\n  Bisect: refactor \"bisect_{bad,good,skip}\" into \"bisect_state\".\n  Bisect: add \"bisect skip\" to the documentation.\n  Bisect: add a \"bisect replay\" test case.\n  Bisect run: \"skip\" current commit if script exit code is 125.\n  Bisect: add \"skip\" to the short usage string.\n\nDan McGee (1):\n  Remove outdated references to cogito in documentation\n\nDaniel Barkalow (15):\n  Refactor http.h USE_CURL_MULTI fill_active_slots().\n  Make function to refill http queue a callback\n  Remove obsolete commit-walkers\n  Modularize commit-walker\n  Add uploadpack configuration info to remote.\n  Report information on branches from remote.h\n  Make fetch-pack a builtin with an internal API\n  Push code for transport library\n  Add matching and parsing for fetch-side refspec rules\n  Add fetch methods to transport library.\n  Make fetch a builtin\n  Allow abbreviations in the first refspec to be merged\n  Restore default verbosity for http fetches.\n  Remove duplicate ref matches in fetch\n  Correct handling of upload-pack in builtin-fetch-pack\n\nDavid Symonds (3):\n  gitweb: Provide title attributes for abbreviated author names.\n  gitweb: Refactor abbreviation-with-title-attribute code.\n  gitweb: Use chop_and_escape_str in more places.\n\nGerrit Pape (1):\n  No longer install git-svnimport, move to contrib/examples\n\nJakub Narebski (1):\n  gitweb: Fix and simplify \"split patch\" detection\n\nJari Aalto (1):\n  On error, do not list all commands, but point to --help option\n\nJeff King (2):\n  send-pack: don't update tracking refs on error\n  t5516: test update of local refs on push\n\nJim Meyering (1):\n  hooks-pre-commit: use \\t, rather than a literal TAB in regexp\n\nJohannes Schindelin (6):\n  Move bundle specific stuff into bundle.[ch]\n  Add bundle transport\n  Introduce remove_dir_recursively()\n  fetch/push: readd rsync support\n  Fix compilation when NO_CURL is defined\n  fetch: if not fetching from default remote, ignore default merge\n\nJonathan del Strother (1):\n  Fixing path quoting in git-rebase\n\nJunio C Hamano (5):\n  bundle transport: fix an alloc_ref() call\n  k.org git toppage: Add link to 1.5.3 release notes.\n  help: remove extra blank line after \"See 'git --help'\" message\n  git-fetch: do not fail when remote branch disappears\n  RelNotes-1.5.4: describe recent updates\n\nLars Hjemli (1):\n  Teach git-pull about --[no-]ff, --no-squash and --commit\n\nLars Knoll (1):\n  Speedup scanning for excluded files.\n\nLinus Torvalds (8):\n  Add 'diffcore.h' to LIB_H\n  Split out \"exact content match\" phase of rename detection\n  Ref-count the filespecs used by diffcore\n  copy vs rename detection: avoid unnecessary O(n*m) loops\n  Do linear-time/space rename logic for exact renames\n  Do exact rename detection regardless of rename limits\n  Fix ugly magic special case in exact rename detection\n  Do the fuzzy rename detection limits with the exact renames removed\n\nMiklos Vajna (1):\n  git-send-email: add a new sendemail.to configuration variable\n\nNguyễn Thái Ngọc Duy (1):\n  git-sh-setup.sh: use \"git rev-parse --show-cdup\" to check for\n      SUBDIRECTORY_OK\n\nPaul Mackerras (34):\n  gitk: Establish and use global left-to-right ordering for commits\n  gitk: Improve the drawing of links to parent lines\n  gitk: Eliminate diagonal arrows\n  gitk: Get rid of idrowranges and rowrangelist\n  gitk: Get rid of idinlist array\n  gitk: Fix some problems with the display of ids as links\n  gitk: Get rid of the rowchk array\n  gitk: Do only the parts of the layout that are needed\n  gitk: Fix bug causing incorrect ref list contents when switching\n      view\n  gitk: Fix bug causing undefined variable error when cherry-picking\n  gitk: Add a cache for the topology info\n  gitk: Make it possible to lay out all the rows we have received so\n      far\n  gitk: Fix bugs in setting rowfinal\n  gitk: Get rid of lookingforhead, use commitinterest instead\n  gitk: Fix bug in generating patches\n  gitk: Simplify highlighting interface and combine with Find\n      function\n  gitk: Fix a couple of bugs\n  gitk: Add progress bars for reading in stuff and for finding\n  gitk: Fix the tab setting in the diff display window\n  gitk: Fix bug causing Tcl error when changing find match type\n  gitk: Use named fonts instead of the font specification\n  gitk: Keep track of font attributes ourselves instead of using font\n      actual\n  gitk: Add a font chooser\n  gitk: Fix bug where the last few commits would sometimes not be\n      visible\n  gitk: Get rid of the diffopts variable\n  gitk: Fix Tcl error: can't unset findcurline\n  gitk: Limit diff display to listed paths by default\n  gitk: Ensure tabstop setting gets restored by Cancel button\n  gitk: Integrate the reset progress bar in the main frame\n  gitk: Use the status window for other functions\n  gitk: Fix some bugs with path limiting in the diff display\n  gitk: Fix a couple more bugs in the path limiting\n  gitk: Simplify the code for finding commits\n  gitk: Use the UI font for the diff/old version/new version radio\n      buttons\n\nPierre Habouzit (3):\n  Add some fancy colors in the test library when terminal supports\n      it.\n  Support a --quiet option in the test-suite.\n  fast-import.c: fix regression due to strbuf conversion\n\nShawn O. Pearce (37):\n  Correct builtin-fetch to handle + in refspecs\n  Fix off by one bug in reflog messages written by builtin-fetch\n  Remove unnecessary debugging from builtin-fetch\n  Remove unused unpacklimit variable from builtin-fetch\n  Replace custom memory growth allocator with ALLOC_GROW\n  Simplify fetch transport API to just one function\n  Refactor index-pack \"keep $sha1\" handling for reuse\n  Remove pack.keep after ref updates in git-fetch\n  Always ensure the pack.keep file is removed by git-fetch\n  Fix builtin-fetch memory corruption by not overstepping array\n  Backup the array passed to fetch_pack so we can free items\n  Properly cleanup in http_cleanup so builtin-fetch does not segfault\n  Don't bother passing ref log details to walker in builtin-fetch\n  Cleanup duplicate initialization code in transport_get\n  Add transport.h to LIB_H as transport.o is in LIB_OBJS\n  Remove unnecessary 'fetch' argument from transport_get API\n  Allow builtin-fetch to work on a detached HEAD\n  Don't configure remote \".\" to fetch everything to itself\n  Remove more debugging from builtin-fetch\n  builtin-fetch: Don't segfault on \"fetch +foo\"\n  Don't attempt to merge non-existant remotes in t5515\n  Correct handling of branch.$name.merge in builtin-fetch\n  Avoid printing unnecessary warnings during fetch and push\n  Use 'unsigned:1' when we mean boolean options\n  Rename remote.uri to remote.url within remote handling internals\n  Refactor struct transport_ops inlined into struct transport\n  Always obtain fetch-pack arguments from struct fetch_pack_args\n  Ensure builtin-fetch honors {fetch,transfer}.unpackLimit\n  Fix memory leaks when disconnecting transport instances\n  Cleanup style nit of 'x == NULL' in remote.c\n  Cleanup unnecessary break in remote.c\n  Prevent send-pack from segfaulting when a branch doesn't match\n  Fix 'push --all branch...' error handling\n  Support 'push --dry-run' for rsync transport\n  Support 'push --dry-run' for http transport\n  Avoid scary errors about tagged trees/blobs during git-fetch\n  Define compat version of mkdtemp for systems lacking it\n\nVäinö Järvelä (1):\n  Added a test for fetching remote tags when there is not tags.\n"},{"id":"58204","messageId":"7vpryqwtt7.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vodeecyni.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-11-04T03:52:52Z","receivedAt":"2007-11-04T03:52:52Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"* The 'maint' branch has these fixes since the last announcement.\n\nBrad King (1):\n  cvsexportcommit: fix for commits that do not have parents\n\nJakub Narebski (1):\n  gitweb: Update config file example for snapshot feature in\n      gitweb/INSTALL\n\nJonas Fonseca (1):\n  Remove escaping of '|' in manpage option sections\n\nJonathan del Strother (1):\n  Fixing path quoting in git-rebase\n\nKristian Høgsberg (1):\n  Remove unecessary hard-coding of EDITOR=':' VISUAL=':' in some test\n      suites.\n\nRalf Wildenhues (1):\n  git-clone.txt: Improve --depth description.\n\nSergei Organov (3):\n  git-filter-branch.txt: fix a typo.\n  git-format-patch.txt: fix explanation of an example.\n  Documentation: quote commit messages consistently.\n\n----------------------------------------------------------------\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.  Notable topics are:\n\n  - fork-exec removal from MinGW work.\n  - the first batch of parse-options.\n  - terse progress display.\n\nShort log follows.\n\nAlex Riesen (2):\n  Rework make_usage to print the usage message immediately\n  Do no colorify test output if stdout is not a terminal\n\nBlake Ramsdell (1):\n  transport.c: squelch a gcc 4.0.1 complaint about an uninitialized\n      variable\n\nEmil Medve (1):\n  Fixed a command line option type for builtin-fsck.c\n\nGerrit Pape (1):\n  git-diff.txt: add section \"output format\" describing the diff\n      formats\n\nJames Bowes (1):\n  gc: use parse_options\n\nJohannes Schindelin (2):\n  Add tests for parse-options.c\n  parse-options: Allow abbreviated options when unambiguous\n\nJohannes Sixt (14):\n  Change git_connect() to return a struct child_process instead of a\n      pid_t.\n  Use start_command() in git_connect() instead of explicit fork/exec.\n  Use start_command() to run content filters instead of explicit\n      fork/exec.\n  Use run_command() to spawn external diff programs instead of\n      fork/exec.\n  Use start_comand() in builtin-fetch-pack.c instead of explicit\n      fork/exec.\n  Have start_command() create a pipe to read the stderr of the child.\n  upload-pack: Use start_command() to run pack-objects in\n      create_pack_file().\n  Add infrastructure to run a function asynchronously.\n  Use the asyncronous function infrastructure in\n      builtin-fetch-pack.c.\n  upload-pack: Move the revision walker into a separate function.\n  upload-pack: Run rev-list in an asynchronous function.\n  t0021-conversion.sh: Test that the clean filter really cleans\n      content.\n  Avoid a dup2(2) in apply_filter() - start_command() can do it for\n      us.\n  Use the asyncronous function infrastructure to run the content\n      filter.\n\nJonas Fonseca (1):\n  Update manpages to reflect new short and long option aliases\n\nKristian Høgsberg (5):\n  Enable wt-status output to a given FILE pointer.\n  Enable wt-status to run against non-standard index file.\n  Introduce entry point add_interactive and add_files_to_cache\n  Export rerere() and launch_editor().\n  Port builtin-add.c to use the new option parser.\n\nNicolas Pitre (16):\n  more compact progress display\n  cope with multiple line breaks within sideband progress messages\n  pack-objects: no delta possible with only one object in the list\n  pack-objects.c: fix some global variable abuse and memory leaks\n  fix const issues with some functions\n  fix for more minor memory leaks\n  prune-packed: don't call display_progress() for every file\n  make struct progress an opaque type\n  relax usage of the progress API\n  add throughput to progress display\n  add throughput display to index-pack\n  add some copyright notice to the progress display code\n  add throughput display to git-push\n  return the prune-packed progress display to the inner loop\n  make sure throughput display gets updated even if progress doesn't\n      move\n  Show total transferred as part of throughput progress\n\nPierre Habouzit (17):\n  Add a simple option parser.\n  parse-options: be able to generate usages automatically\n  parse-options: make some arguments optional, add callbacks.\n  Add shortcuts for very often used options.\n  parse-options: allow callbacks to take no arguments at all.\n  Make builtin-rm.c use parse_options.\n  Make builtin-mv.c use parse-options\n  Make builtin-branch.c use parse_options.\n  Make builtin-describe.c use parse_options\n  Make builtin-revert.c use parse_options.\n  Make builtin-update-ref.c use parse_options\n  Make builtin-symbolic-ref.c use parse_options.\n  Make builtin-for-each-ref.c use parse-opts.\n  Make builtin-fsck.c use parse_options.\n  Make builtin-count-objects.c use parse_options.\n  Make builtin-name-rev.c use parse_options.\n  Make builtin-pack-refs.c use parse_options.\n\nScott R Parish (7):\n  \"git\" returns 1; \"git help\" and \"git help -a\" return 0\n  remove unused/unneeded \"pattern\" argument of list_commands\n  \"current_exec_path\" is a misleading name, use \"argv_exec_path\"\n  list_commands(): simplify code by using chdir()\n  use only the $PATH for exec'ing git commands\n  include $PATH in generating list of commands for \"help -a\"\n  shell should call the new setup_path() to setup $PATH\n\nShawn O. Pearce (3):\n  Change 'Deltifying objects' to 'Compressing objects'\n  Teach prune-packed to use the standard progress meter\n  Stop displaying \"Pack pack-$ID created.\" during git-gc\n\nSteffen Prohaska (3):\n  mergetool: use path to mergetool in config var\n      mergetool.<tool>.path\n  mergetool: add support for ECMerge\n  mergetool: avoid misleading message \"Resetting to default...\"\n"},{"id":"58818","messageId":"7vk5ot40w9.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vpryqwtt7.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-11-08T08:06:14Z","receivedAt":"2007-11-08T08:06:14Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"On 'master' front:\n\n - git-p4 in contrib/ has updates.  As I cannot test it myself\n   and did not hear any success/failure stories from the list,\n   the only way to make sure is to push it out and see if\n   anybody screams.\n\n - \"git lost-found\" is going to be deprecated (not removed) in\n   the next feature release.\n\n - Unspecified clean.requireForce defaults to true; this would\n   make \"git clean\" require \"-f\" by default.\n\n - \"git send-email --suppress-from\" does not CC yourself even\n   when your name is on S-o-b: or Cc: lines in the body of the\n   message.\n\n----------------------------------------------------------------\n\n* The 'maint' branch has these fixes since the last announcement.\n\nAsk Bjørn Hansen (1):\n  When exec() fails include the failing command in the error message\n\nDavid D Kilzer (2):\n  RelNotes-1.5.3.5: fix typo\n  RelNotes-1.5.3.5: fix another typo\n\nEric Wong (2):\n  git-svn: fix dcommit clobbering when committing a series of diffs\n  git-svn: t9114: verify merge commit message in test\n\nGerrit Pape (3):\n  git-diff.txt: add section \"output format\" describing the diff\n      formats\n  git-cvsimport: really convert underscores in branch names to dots\n      with -u\n  git-daemon: fix remote port number in log entry\n\nJohannes Schindelin (1):\n  Add Documentation/CodingGuidelines\n\nJunio C Hamano (1):\n  grep with unmerged index\n\nMarco Costalba (1):\n  Remove a couple of duplicated include\n\nMike Hommey (1):\n  Delay pager setup in git blame\n\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nBenoit Sigoure (1):\n  git-svn: sort the options in the --help message.\n\nBrian Gernhardt (1):\n  t3502: Disambiguate between file and rev by adding --\n\nChris Pettitt (2):\n  git-p4: Add a helper function to parse the full git diff-tree\n      output.\n  git-p4: Detect changes to executable bit and include them in p4\n      submit.\n\nDaniel Barkalow (1):\n  Use parseopts in builtin-push\n\nDavid Symonds (1):\n  Improve accuracy of check for presence of deflateBound.\n\nGerrit Pape (4):\n  git-reset: add -q option to operate quietly\n  contrib/hooks/post-receive-email: fix typo\n  contrib/hooks/post-receive-email: reformat to wrap comments at 76\n      chars\n  contrib/hooks/post-receive-email: make subject prefix configurable\n\nHeikki Orsila (1):\n  git-clone: honor \"--\" to end argument parsing\n\nJ. Bruce Fields (1):\n  errors: \"strict subset\" -> \"ancestor\"\n\nJakub Narebski (9):\n  gitweb: Always set 'from_file' and 'to_file' in\n      parse_difftree_raw_line\n  gitweb: Add 'status_str' to parse_difftree_raw_line output\n  gitweb: Remove CGI::Carp::set_programname() call from t9500 gitweb\n      test\n  gitweb: Easier adding/changing parameters to current URL\n  gitweb: Use href(-replay=>1, page=>...) to generate pagination\n      links\n  gitweb: Use href(-replay=>1, action=>...) to generate alternate\n      views\n  gitweb: Add tests for overriding gitweb config with repo config\n  gitweb: Read repo config using 'git config -z -l'\n  gitweb: Use config file for repository description and URLs\n\nJohannes Schindelin (3):\n  git-reset: do not be confused if there is nothing to reset\n  Split off the pretty print stuff into its own file\n  Deprecate git-lost-found\n\nJohannes Sixt (1):\n  Fix an infinite loop in sq_quote_buf().\n\nJunio C Hamano (6):\n  revert/cherry-pick: work on merge commits as well\n  format-patch -s: add MIME encoding header if signer's name requires\n      so\n  cherry-pick/revert -m: add tests\n  test format-patch -s: make sure MIME content type is shown as\n      needed\n  clean: require -f to do damage by default\n  gc: --prune prunes unreferenced objects.\n\nMike Hommey (5):\n  Refactor working tree setup\n  Use setup_work_tree() in builtin-ls-files.c\n  Don't always require working tree for git-rm\n  Make git-blame fail when working tree is needed and we're not in\n      one\n  Small code readability improvement in show_reference() in\n      builtin-tag.c\n\nNicolas Pitre (4):\n  make the pack index version configurable\n  pack-objects: get rid of an ugly cast\n  git-fetch: more terse fetch output\n  restore fetching with thin-pack capability\n\nPierre Habouzit (1):\n  Some better parse-options documentation.\n\nRalf Wildenhues (1):\n  Fix minor nits in configure.ac\n\nShawn Bohrer (1):\n  Add more tests for git-clean\n\nSimon Sasburg (1):\n  Make mailsplit and mailinfo strip whitespace from the start of the\n      input\n\nSteffen Prohaska (1):\n  Fix comment in strbuf.h to use correct name strbuf_avail()\n\nSteven Grimm (1):\n  builtin-fetch: Add \"-q\" as a synonym for \"--quiet\"\n\nUwe Kleine-König (1):\n  send-email: apply --suppress-from to S-o-b and cc-cmd\n"},{"id":"58862","messageId":"20071108113838.GD23807@artemis.corp","threadId":"10419","inReplyTo":"7vk5ot40w9.fsf@gitster.siamese.dyndns.org","subject":"Re: What's in git.git (stable)","fromName":"Pierre Habouzit","fromEmail":"madcoder@debian.org","sentAt":"2007-11-08T11:38:38Z","receivedAt":"2007-11-08T11:38:38Z","isPatch":false,"sender":{"key":"madcoder@debian.org","avatar":"https://avatars.githubusercontent.com/u/44708?v=4"},"body":"On Thu, Nov 08, 2007 at 08:06:14AM +0000, Junio C Hamano wrote:\n> On 'master' front:\n> \n>  - git-p4 in contrib/ has updates.  As I cannot test it myself\n>    and did not hear any success/failure stories from the list,\n>    the only way to make sure is to push it out and see if\n>    anybody screams.\n> \n>  - \"git lost-found\" is going to be deprecated (not removed) in\n>    the next feature release.\n> \n>  - Unspecified clean.requireForce defaults to true; this would\n>    make \"git clean\" require \"-f\" by default.\n> \n>  - \"git send-email --suppress-from\" does not CC yourself even\n>    when your name is on S-o-b: or Cc: lines in the body of the\n>    message.\n> \n> ----------------------------------------------------------------\n> \n> * The 'maint' branch has these fixes since the last announcement.\n[...]\n> Pierre Habouzit (1):\n>   Some better parse-options documentation.\n\n  Eeeer isn't there some kind of problem ? This is not in maint, I\nbelieve you swapped 'master' and 'maint' :)\n\n-- \n·O·  Pierre Habouzit\n··O                                                madcoder@debian.org\nOOO                                                http://www.madism.org\n"},{"id":"59430","messageId":"7vy7d43ptc.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vk5ot40w9.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-11-12T07:06:55Z","receivedAt":"2007-11-12T07:06:55Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"* The 'maint' branch has these fixes since the last announcement.\n\nAlex Riesen (1):\n  stop t1400 hiding errors in tests\n\nBenoit Sigoure (1):\n  git-send-email: Change the prompt for the subject of the initial\n      message.\n\nGerrit Pape (1):\n  git-mailsplit: with maildirs not only process cur/, but also new/\n\nJonas Fonseca (1):\n  instaweb: Minor cleanups and fixes for potential problems\n\nJunio C Hamano (3):\n  refresh_index_quietly(): express \"optional\" nature of index writing\n      better\n  Makefile: add missing dependency on wt-status.h\n  Start preparing for 1.5.3.6\n\nNicolas Pitre (3):\n  print warning/error/fatal messages in one shot\n  git-hash-object should honor config variables\n  fix index-pack with packs >4GB containing deltas on 32-bit machines\n\nRalf Wildenhues (2):\n  Avoid a few unportable, needlessly nested \"...`...\".\n  Fix sed string regex escaping in module_name.\n\nSergei Organov (1):\n  SubmittingPatches: improve the 'Patch:' section of the checklist\n\nVincent Zanotti (1):\n  gitweb: correct month in date display for atom feeds\n\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nGerrit Pape (3):\n  hooks--update: fix test for properly set up project description\n      file\n  hooks--update: decline deleting tags or branches by default, add\n      config options\n  contrib/hooks/post-receive-email: remove cruft, $committer is not\n      used\n\nJohannes Schindelin (4):\n  parse-options: abbreviation engine fix.\n  builtin-reset: do not call \"ls-files --unmerged\"\n  builtin-reset: avoid forking \"update-index --refresh\"\n  builtin-blame: set up the work_tree before the first file access\n\nJohannes Sixt (1):\n  upload-pack: Use finish_{command,async}() instead of waitpid().\n\nJunio C Hamano (6):\n  Style: place opening brace of a function definition at column 1\n  Update draft release notes for 1.5.4\n  Documentation: lost-found is now deprecated.\n  Make check-docs target detect removed commands\n  Documentation: remove documentation for removed tools.\n  git-commit: a bit more tests\n\nLars Hjemli (1):\n  for-each-ref: fix setup of option-parsing for --sort\n\nMichele Ballabio (1):\n  test-lib.sh: move error line after error() declaration\n\nNicolas Pitre (1):\n  add a howto document about corrupted blob recovery\n\nRalf Wildenhues (1):\n  git-bisect.sh: Fix sed script to work with AIX and BSD sed.\n\nSergei Organov (1):\n  core-tutorial.txt: Fix git-show-branch example and its description\n\nSteffen Prohaska (2):\n  push: mention --verbose option in documentation\n  push: teach push to pass --verbose option to transport layer\n"},{"id":"59892","messageId":"7vabpg9x5k.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vy7d43ptc.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-11-15T00:20:55Z","receivedAt":"2007-11-15T00:20:55Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"* The 'maint' branch has these fixes since the last announcement.\n\nBenoit Sigoure (1):\n  git-svn: prevent dcommitting if the index is dirty.\n\nChristian Couder (1):\n  for-each-ref: fix off by one read.\n\nJeff King (1):\n  git-branch: remove mention of non-existent '-b' option\n\nJing Xue (1):\n  replace reference to git-rm with git-reset in git-commit doc\n\nJonas Fonseca (1):\n  Documentation: Fix man page breakage with DocBook XSL v1.72\n\nJunio C Hamano (3):\n  t/t3404: fix test for a bogus todo file.\n  revert/cherry-pick: allow starting from dirty work tree.\n  git-clean: honor core.excludesfile\n\nSergei Organov (2):\n  core-tutorial.txt: Fix argument mistake in an example.\n  git-remote.txt: fix typo\n\nShawn O. Pearce (2):\n  Fix memory leak in traverse_commit_list\n  Don't allow fast-import tree delta chains to exceed maximum depth\n\nWincent Colaiuta (1):\n  Grammar fixes for gitattributes documentation\n\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nAlex Riesen (1):\n  Fix dependencies of parse-options test program\n\nAndreas Ericsson (1):\n  Simplify strchrnul() compat code\n\nBjörn Steinbrink (3):\n  git-commit.sh: Fix usage checks regarding paths given when they do\n      not make sense\n  t7005-editor.sh: Don't invoke real vi when it is in GIT_EXEC_PATH\n  git-commit: Add tests for invalid usage of -a/--interactive with\n      paths\n\nBrian Gernhardt (2):\n  format-patch: Add configuration and off switch for --numbered\n  format-patch: Test --[no-]numbered and format.numbered\n\nDavid Symonds (1):\n  Rearrange git-format-patch synopsis to improve clarity.\n\nEmil Medve (1):\n  git-stash: Fix listing stashes\n\nEric Wong (1):\n  git-svn: support for funky branch and project names over HTTP(S)\n\nGordon Hopper (1):\n  git-cvsimport: fix handling of user name when it is not set in\n      CVSROOT\n\nJohannes Schindelin (2):\n  rebase: operate on a detached HEAD\n  rebase: fix \"rebase --continue\" breakage\n\nJohannes Sixt (2):\n  git-clean: Fix error message if clean.requireForce is not set.\n  Fix preprocessor logic that determines the availablity of\n      strchrnul().\n\nJonas Fonseca (1):\n  Documentation: Fix references to deprecated commands\n\nJunio C Hamano (9):\n  stash: implement \"stash create\"\n  rebase: allow starting from a dirty tree.\n  Revert \"rebase: allow starting from a dirty tree.\"\n  git-merge: no reason to use cpio anymore\n  ce_match_stat, run_diff_files: use symbolic constants for\n      readability\n  git-add: make the entry stat-clean after re-adding the same\n      contents\n  t2200: test more cases of \"add -u\"\n  Resurrect git-revert.sh example and add comment to builtin-revert.c\n  core.excludesfile clean-up\n\nMike Hommey (2):\n  Reuse previous annotation when overwriting a tag\n  Add tests for git tag\n\nNicolas Pitre (6):\n  fix display overlap between remote and local progress\n  sideband.c: ESC is spelled '\\033' not '\\e' for portability.\n  make display of total transferred more accurate\n  remove dead code from the csum-file interface\n  make display of total transferred fully accurate\n  nicer display of thin pack completion\n\nPierre Habouzit (1):\n  git-fetch: be even quieter.\n\nRené Scharfe (5):\n  Add strchrnul()\n  --pretty=format: on-demand format expansion\n  --pretty=format: parse commit message only once\n  add strbuf_adddup()\n  --format=pretty: avoid calculating expensive expansions twice\n\nRobin Rosenberg (1):\n  cvsexportcommit: Add switch to specify CVS workdir\n\nRémi Vanicat (1):\n  Make GIT_INDEX_FILE apply to git-commit\n\nSergei Organov (2):\n  user-manual.txt: fix a few mistakes\n  user-manual: minor rewording for clarity.\n\nShawn O. Pearce (5):\n  git-fetch: Always fetch tags if the object they reference exists\n  run-command: Support sending stderr to /dev/null\n  rev-list: Introduce --quiet to avoid /dev/null redirects\n  git-fetch: avoid local fetching from alternate (again)\n  Handle broken vsnprintf implementations in strbuf\n"},{"id":"60170","messageId":"7vy7cwsi3p.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vabpg9x5k.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-11-17T21:00:10Z","receivedAt":"2007-11-17T21:00:10Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"* The 'maint' branch has these fixes since the last announcement.\n\nThere are a few candidate fixes for back-porting from the\ndevelopment series (see \"What's cooking\" message).  I will\ninclude them in 1.5.3.6, probably on or around 20th of this\nmonth.\n\nDavid Symonds (1):\n  Improve accuracy of check for presence of deflateBound.\n\nJeff King (1):\n  git-send-email: add charset header if we add encoded 'From'\n\nJunio C Hamano (3):\n  core.excludesfile clean-up\n  Fix per-directory exclude handing for \"git add\"\n  Update draft release notes for 1.5.3.6\n\nWincent Colaiuta (1):\n  Fix t9101 test failure caused by Subversion \"auto-props\"\n\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nGuido Ostkamp (1):\n  Remove unreachable statements\n\nJeff King (1):\n  git-ls-files: add --exclude-standard\n\nJohannes Sixt (1):\n  refs.c: Remove unused get_ref_sha1()\n\nJunio C Hamano (2):\n  Fix per-directory exclude handing for \"git add\"\n  Update draft release notes for 1.5.4\n\nMike Hommey (1):\n  Fix and improve t7004 (git-tag tests)\n\nSergei Organov (3):\n  Documentation: customize diff-options depending on particular\n      command\n  user-manual.txt: minor clarification.\n  Documentation: fix git-clone manpage not to refer to itself\n"},{"id":"60854","messageId":"7vk5o6jbq9.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vy7cwsi3p.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-11-25T20:45:18Z","receivedAt":"2007-11-25T20:45:18Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"There are quite a few backported fixes on 'maint' and it might make\nsense to cut 1.5.3.7 soon.\n\nOn 'master' front, many topics that have been cooking in 'next' have\ngraduated.  Notably:\n\n - git-bisect learns \"skip\";\n\n - git-rebase --skip does not need \"reset --hard\" beforehand;\n\n - git-clean is now in C;\n\n - git-push is much more careful reporting errors and updateing tracking\n   refs.\n\n - git-push learns --mirror option.\n\nAlso contains the 0.9.0 series of git-gui with i18n.\n\n----------------------------------------------------------------\n* The 'maint' branch has these fixes since the last announcement.\n\nBjörn Steinbrink (3):\n  git-commit.sh: Fix usage checks regarding paths given when they do\n      not make sense\n  t7005-editor.sh: Don't invoke real vi when it is in GIT_EXEC_PATH\n  git-commit: Add tests for invalid usage of -a/--interactive with paths\n\nBrian Downing (2):\n  config: correct core.loosecompression documentation\n  config: clarify compression defaults\n\nJ. Bruce Fields (3):\n  git-remote.txt: fix example url\n  user-manual: mention \"...\" in \"Generating diffs\", etc.\n  Documentation: Fix references to deprecated commands\n\nJeff King (1):\n  send-email: add transfer encoding header with content-type\n\nJohannes Schindelin (1):\n  bundle create: keep symbolic refs' names instead of resolving them\n\nJunio C Hamano (10):\n  format-patch -s: add MIME encoding header if signer's name requires so\n  test format-patch -s: make sure MIME content type is shown as needed\n  ce_match_stat, run_diff_files: use symbolic constants for readability\n  git-add: make the entry stat-clean after re-adding the same contents\n  t2200: test more cases of \"add -u\"\n  grep -An -Bm: fix invocation of external grep command\n  GIT 1.5.3.6\n  Make test scripts executable.\n  Fix sample pre-commit hook\n  git-checkout: describe detached head correctly\n\nLinus Torvalds (1):\n  Fix rev-list when showing objects involving submodules\n\nMatthieu Moy (1):\n  Doc fix for git-reflog: mention @{...} syntax, and <ref> in synopsys.\n\nRémi Vanicat (1):\n  Make GIT_INDEX_FILE apply to git-commit\n\nSteffen Prohaska (1):\n  user-manual: Add section \"Why bisecting merge commits can be harder ...\"\n\n\n----------------------------------------------------------------\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nAlex Riesen (4):\n  More updates and corrections to the russian translation of git-gui\n  Updated russian translation of git-gui\n  Add a test checking if send-pack updated local tracking branches\n      correctly\n  Update the tracking references only if they were succesfully\n      updated on remote\n\nAndy Whitcroft (5):\n  Teach send-pack a mirror mode\n  git-push: plumb in --mirror mode\n  Add tests for git push'es mirror mode\n  git-push: add documentation for the newly added --mirror mode\n  git-quiltimport.sh fix --patches handling\n\nAnton Gyllenberg (1):\n  gitview: import only one of gtksourceview and gtksourceview2\n\nAsk Bjørn Hansen (1):\n  send-email: Don't add To: recipients to the Cc: header\n\nChristian Couder (4):\n  Bisect reset: remove bisect refs that may have been packed.\n  Bisect visualize: use \"for-each-ref\" to list all good refs.\n  Bisect: use \"$GIT_DIR/BISECT_NAMES\" to check if we are bisecting.\n  Bisect reset: do nothing when not bisecting.\n\nChristian Stimming (12):\n  Mark strings for translation.\n  Makefile rules for translation catalog generation and installation.\n  Add glossary that can be converted into a po file for each\n      language.\n  Add glossary translation template into git.\n  German translation for git-gui\n  German glossary for translation\n  git-gui: Add more words to translation glossary\n  git-gui: Update German glossary according to mailing list\n      discussion\n  git-gui: Incorporate glossary changes into existing German\n      translation\n  git-gui: Update German translation, including latest glossary\n      changes\n  git-gui: Add more terms to glossary.\n  git-gui: Update German translation\n\nDaniel Barkalow (5):\n  Miscellaneous const changes and utilities\n  Build-in peek-remote, using transport infrastructure.\n  Use built-in send-pack.\n  Build-in send-pack, with an API for other programs to call.\n  Build in ls-remote\n\nDavid D Kilzer (3):\n  git-svn log: fix ascending revision ranges\n  git-svn log: include commit log for the smallest revision in a\n      range\n  git-svn log: handle unreachable revisions like \"svn log\"\n\nDavid D. Kilzer (4):\n  git-send-email: show all headers when sending mail\n  git-svn: extract reusable code into utility functions\n  git-svn info: implement info command\n  git-svn: info --url [path]\n\nDavid Reiss (1):\n  git-svn: Fix a typo and add a comma in an error message in git-svn\n\nDavid Symonds (2):\n  git-checkout: Support relative paths containing \"..\".\n  git-checkout: Test for relative path use.\n\nEric Wong (3):\n  git-svn: add tests for command-line usage of init and clone\n      commands\n  t9106: fix a race condition that caused svn to miss modifications\n  git-svn: allow `info' command to work offline\n\nGuido Ostkamp (1):\n  Use compat mkdtemp() on Solaris boxes\n\nHarri Ilari Tapio Liusvaara (1):\n  git-gui: Disambiguate \"commit\"\n\nIrina Riesen (1):\n  git-gui: initial version of russian translation\n\nJakub Narebski (3):\n  gitweb: Style all tables using CSS\n  gitweb: Put project README in div.readme, fix its padding\n  autoconf: Add tests for memmem, strtoumax and mkdtemp functions\n\nJeff King (11):\n  more terse push output\n  receive-pack: don't mention successful updates\n  send-pack: require --verbose to show update of tracking refs\n  send-pack: track errors for each ref\n  send-pack: check ref->status before updating tracking refs\n  send-pack: assign remote errors to each ref\n  make \"find_ref_by_name\" a public function\n  send-pack: tighten remote error reporting\n  send-pack: fix \"everything up-to-date\" message\n  avoid \"defined but not used\" warning for fetch_objs_via_walker\n  send-pack: cluster ref status reporting\n\nJohannes Schindelin (9):\n  Add po/git-gui.pot\n  Ignore po/*.msg\n  git-gui: Deiconify startup wizard so it raises to the top\n  git-gui: add a simple msgfmt replacement\n  po2msg: ignore entries marked with \"fuzzy\"\n  po2msg: ignore untranslated messages\n  po2msg: actually output statistics\n  Close files opened by lock_file() before unlinking.\n  rebase -i: move help to end of todo file\n\nJohannes Sixt (14):\n  git-gui: Change main window layout to support wider screens\n  Give git-am back the ability to add Signed-off-by lines.\n  t5300-pack-object.sh: Split the big verify-pack test into smaller\n      parts.\n  t7501-commit.sh: Not all seds understand option -i\n  t5302-pack-index: Skip tests of 64-bit offsets if necessary.\n  Skip t3902-quoted.sh if the file system does not support funny\n      names.\n  Use is_absolute_path() in sha1_file.c.\n  Move #include <sys/select.h> and <sys/ioctl.h> to\n      git-compat-util.h.\n  builtin run_command: do not exit with -1.\n  Allow a relative builtin template directory.\n  Introduce git_etc_gitconfig() that encapsulates access of\n      ETC_GITCONFIG.\n  Allow ETC_GITCONFIG to be a relative path.\n  fetch-pack: Prepare for a side-band demultiplexer in a thread.\n  Flush progress message buffer in display().\n\nJunio C Hamano (20):\n  git-gui po/README: Guide to translators\n  git-gui: Update Japanese strings (part 2)\n  scripts: Add placeholders for OPTIONS_SPEC\n  git-rev-parse --parseopt\n  git-sh-setup: fix parseopt `eval` string underquoting\n  send-pack: segfault fix on forced push\n  git-am: -i does not take a string parameter.\n  git-bisect: war on \"sed\"\n  git-bisect: use update-ref to mark good/bad commits\n  git-bisect: modernize branch shuffling hack\n  Draft release notes: fix clean.requireForce description\n  Update draft release notes for 1.5.4\n  git-clean: Fix error message if clean.requireForce is not set.\n  git-compat-util.h: auto-adjust to compiler support of FLEX_ARRAY a\n      bit better\n  Fix \"quote\" misconversion for rewrite diff output.\n  Make test scripts executable.\n  Addendum to \"MaintNotes\"\n  t4119: correct overeager war-on-whitespace\n  Deprecate peek-remote\n  Update draft release notes for 1.5.4\n\nKirill (1):\n  Updated Russian translation.\n\nKonstantin V. Arkhipov (1):\n  git-svn's dcommit must use subversion's config\n\nLinus Torvalds (6):\n  Simplify topo-sort logic\n  Add \"--early-output\" log flag for interactive GUI use\n  Enhance --early-output format\n  revision walker: mini clean-up\n  Fix rev-list when showing objects involving submodules\n  Fix parent rewriting in --early-output\n\nMichele Ballabio (4):\n  git-gui: remove dots in some UI strings\n  git-gui: add some strings to translation\n  git-gui: fix typo in lib/blame.tcl\n  git-gui: update Italian translation\n\nMike Hommey (1):\n  Do git reset --hard HEAD when using git rebase --skip\n\nMiklos Vajna (1):\n  Hungarian translation of git-gui\n\nNanako Shiraishi (2):\n  Japanese translation of git-gui\n  git-gui: Update Japanese strings\n\nNicolas Pitre (1):\n  rehabilitate some t5302 tests on 32-bit off_t machines\n\nPaolo Ciarrocchi (1):\n  Italian translation of git-gui\n\nPierre Habouzit (17):\n  Add a parseopt mode to git-rev-parse to bring parse-options to\n      shell scripts.\n  Update git-sh-setup(1) to allow transparent use of git-rev-parse\n      --parseopt\n  Migrate git-clean.sh to use git-rev-parse --parseopt.\n  Migrate git-clone to use git-rev-parse --parseopt\n  Migrate git-am.sh to use git-rev-parse --parseopt\n  Migrate git-merge.sh to use git-rev-parse --parseopt\n  Migrate git-instaweb.sh to use git-rev-parse --parseopt\n  Migrate git-checkout.sh to use git-rev-parse --parseopt\n      --keep-dashdash\n  Migrate git-quiltimport.sh to use git-rev-parse --parseopt\n  Migrate git-repack.sh to use git-rev-parse --parseopt\n  sh-setup: don't let eval output to be shell-expanded.\n  parse-options new features.\n  Use OPT_SET_INT and OPT_BIT in builtin-branch\n  Use OPT_BIT in builtin-for-each-ref\n  Use OPT_BIT in builtin-pack-refs\n  Make the diff_options bitfields be an unsigned with explicit masks.\n  Reorder diff_opt_parse options more logically per topics.\n\nShawn Bohrer (2):\n  Make git-clean a builtin\n  Teach git clean to use setup_standard_excludes()\n\nShawn O. Pearce (57):\n  git-gui: Locate the library directory early during startup\n  git-gui: Initialize Tcl's msgcat library for internationalization\n  git-gui: Update po/README as symlink process is not necessary\n  git-gui: Correct stock message for 'Invalid font specified in %s'\n  git-gui: Quiet the msgfmt part of the make process\n  git-gui: Ensure msgfmt failure stops GNU make\n  git-gui: Mark revision chooser tooltip for translation\n  git-gui: Localize commit/author dates when displaying them\n  git-gui: Support context-sensitive i18n\n  git-gui: Document the new i18n context support\n  git-gui: Make the tree browser also use lightgray selection\n  git-gui: Paper bag fix missing translated strings\n  git-gui: Fix missing i18n markup in push/fetch windows\n  git-gui: Support native Win32 Tcl/Tk under Cygwin\n  git-gui: Refactor some UI init to occur earlier\n  git-gui: Allow users to choose/create/clone a repository\n  git-gui: Avoid console scrollbars unless they are necessary\n  git-gui: Don't bother showing OS error message about hardlinks\n  git-gui: Keep the UI responsive while counting objects in clone\n  git-gui: Copy objects/info/alternates during standard clone\n  git-gui: Don't delete console window namespaces too early\n  git-gui: Don't delete scrollbars in console windows\n  git-gui: Switch the git-gui logo to Henrik Nyh's logo\n  git-gui: Make the status bar easier to read in the setup wizard\n  git-gui: Use Henrik Nyh's git logo icon on Windows systems\n  git-gui: Support a native Mac OS X application bundle\n  git-gui: Refer to ourselves as \"Git Gui\" and not \"git-gui\"\n  git-gui: Allow forced push into remote repository\n  git-gui: Refactor Henrik Nyh's logo into its own procedure\n  git-gui: Refactor about dialog code into its own module\n  git-gui: Include our Git logo in the about dialog\n  git-gui: Use progress meter in the status bar during index updates\n  git-gui: Consolidate the Fetch and Push menus into a Remote menu\n  git-gui: Bind Cmd-, to Preferences on Mac OS X\n  git-gui: Shorten the staged/unstaged changes title bar text\n  git-gui: Updated po strings based on current sources\n  git-gui: Move load_config procedure below git-version selection\n  git-gui: Refactor git-config --list parsing\n  git-gui: Support LFs embedded in config file values\n  git-gui: Change repository browser radio buttons to hyperlinks\n  git-gui: Offer repository management features in menu bar\n  git-gui: Fix bind errors when switching repository chooser panels\n  git-gui: Disable the text widget in the repository chooser\n  git-gui: Bind n/c/o accelerators in repository chooser\n  git-gui: Ensure copyright message is correctly read as UTF-8\n  git-gui: Use proper Windows shortcuts instead of bat files\n  git-gui: Support cloning Cygwin based work-dirs\n  git-gui: Collapse $env(HOME) to ~/ in recent repositories on\n      Windows\n  git-gui: Honor a config.mak in git-gui's top level\n  git-gui: Paper bag fix the global config parsing\n  git-gui: Make sure we get errors from git-update-index\n  git-gui: Protect against bad translation strings\n  git-gui: Allow users to set font weights to bold\n  Reteach builtin-ls-remote to understand remotes\n  git-gui: Bind Meta-T for \"Stage To Commit\" menu action\n  Fix warning about bitfield in struct ref\n  git-gui 0.9.0\n\nShun Kei Leung (1):\n  git-p4: Fix typo in --detect-labels\n\nSimon Hausmann (1):\n  git-p4: Fix direct import from perforce after fetching changes\n      through git from origin\n\nSteffen Prohaska (4):\n  git-gui: add directory git-gui is located in to PATH (on Windows)\n  git-gui: set NO_MSGFMT to force using pure tcl replacement in\n      msysgit\n  git-gui: add mingw specific startup wrapper\n  git-gui: offer a list of recent repositories on startup\n\nThomas Harning (1):\n  git-merge-ours: make it a builtin.\n\nWincent Colaiuta (3):\n  Further clarify clean.requireForce changes\n  Authenticate only once in git-send-email\n  Refactor patch_update_cmd\n\nXudong Guan (2):\n  Initial Chinese translation for git-gui\n  git-gui: Added initial version of po/glossary/zh_cn.po\n"},{"id":"61536","messageId":"7v63zjgoel.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vk5o6jbq9.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-01T02:05:38Z","receivedAt":"2007-12-01T02:05:38Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"* The 'maint' branch has these fixes since the last announcement.\n\nJ. Bruce Fields (4):\n  user-manual: define \"branch\" and \"working tree\" at start\n  user-manual: failed push to public repository\n  user-manual: clarify language about \"modifying\" old commits\n  user-manual: recovering from corruption\n\nJan Hudec (1):\n  Improve description of git-branch -d and -D in man page.\n\nJeff King (4):\n  Add basic cvsimport tests\n  cvsimport: use rev-parse to support packed refs\n  cvsimport: miscellaneous packed-ref fixes\n  cvsimport: fix usage of cvsimport.module\n\nJohannes Schindelin (1):\n  Replace the word 'update-cache' by 'update-index' everywhere\n\nJohannes Sixt (1):\n  t7003-filter-branch: Fix test of a failing --msg-filter.\n\nJunio C Hamano (1):\n  scripts: do not get confused with HEAD in work tree\n\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nAndré Goddard Rosa (2):\n  Print the real filename that we failed to open.\n  Error out when user doesn't have access permission to the repository\n\nJakub Narebski (1):\n  Add config_int() method to the Git perl module\n\nJeff King (1):\n  Revert \"t5516: test update of local refs on push\"\n\nJohannes Schindelin (4):\n  filter-branch: fix dirty way to provide the helpers to commit filters\n  git checkout's reflog: even when detaching the HEAD, say from where\n  bash completion: add diff options\n  receive-pack: allow deletion of corrupt refs\n\nJunio C Hamano (3):\n  revert/cherry-pick: do not mention the original ref\n  dir.c: minor clean-up\n  per-directory-exclude: lazily read .gitignore files\n\nLinus Torvalds (2):\n  Fix a pathological case in git detecting proper renames\n  Fix a pathological case in git detecting proper renames\n\nPascal Obry (1):\n  git-stash: do not get fooled with \"color.diff = true\"\n\nSteffen Prohaska (2):\n  Use is_absolute_path() in diff-lib.c, lockfile.c, setup.c, trace.c\n  sha1_file.c: Fix size_t related printf format warnings\n\nWincent Colaiuta (1):\n  Fix typo in draft 1.5.4 release notes\n"},{"id":"61886","messageId":"7vsl2i6ea4.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7v63zjgoel.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-04T08:43:31Z","receivedAt":"2007-12-04T08:43:31Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Nothing exciting on 'maint' since 1.5.3.7.\n\nOn the 'master' front, we will soon be in feature freeze for 1.5.4.\nMany topics that have been cooking in 'next' has been pushed out.  This\nround it is a rather large batch but hopefully it will not destabilize\nit too much.  Knock wood.\n\n * \"git pull --rebase\" is a different way to integrate what you fetched\n   into your current branch.\n\n * \"git fast-export\" produces datastream that can be fed to fast-import\n   to reproduce the history recorded in a git repository.\n\n * gitk is now merged as a subdirectory of git.git project, in\n   preparation for its i18n.\n\n * Value \"true\" for color.diff and color.status configuration used to\n   mean \"always\" (even when the output is not going to a terminal).\n   This has been corrected to mean the same thing as \"auto\".\n\n * \"git commit --allow-empty\" allows you to create a single-parent\n   commit that records the same tree as its parent, overriding the usual\n   safety valve.\n\n * \"git stash random-text\" does not create a new stash anymore.  It was\n   a UI mistake.  Use \"git stash save random-text\", or \"git stash\"\n   (without extra args) for that.\n\n * HTTP proxy can be specified per remote repository using\n   remote.*.proxy configuration, or global http.proxy configuration\n   variable.\n\n * \"git rebase -i\" also triggers rerere to help you repeated merges.\n\n * \"git prune --expire <time>\" can exempt young loose objects from\n   getting pruned.\n\n * \"git branch --contains <commit>\" can list branches that are\n   descendants of a given commit.\n\n----------------------------------------------------------------\n\n* The 'maint' branch has these fixes since the last announcement.\n\nJeff King (1):\n  t9600: test cvsimport from CVS working tree\n\nJunio C Hamano (2):\n  Fix typo in t4008 test title\n  GIT 1.5.3.7\n\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nAndy Whitcroft (1):\n  git-svn: add support for pulling author from From: and Signed-off-by:\n\nCarlos Rica (1):\n  Make builtin-tag.c use parse_options.\n\nChristian Couder (2):\n  Documentation: add a new man page for \"git-help\"\n  Trace and quote with argv: get rid of unneeded count argument.\n\nDavid D. Kilzer (1):\n  git-svn: Remove unnecessary Git::SVN::Util package\n\nDavid Symonds (1):\n  Mention that git-rm can be an appropriate resolution as well as git-add.\n\nDenis Cheng (1):\n  gitweb: the commitdiff is very commonly used, it's needed on search page,\n    too\n\nGustaf Hendeby (1):\n  git-svn now reads settings even if called in subdirectory\n\nJakub Narebski (1):\n  gitweb: Update and improve gitweb/README file\n\nJeff King (2):\n  git-tag: test that -s implies an annotated tag\n  Enable rewrite as well as rename detection in git-status\n\nJohannes Schindelin (7):\n  Replace instances of export VAR=VAL with VAR=VAL; export VAR\n  Teach 'git pull' about --rebase\n  rebase -i: give rerere a chance\n  Add \"--expire <time>\" option to 'git prune'\n  Add 'git fast-export', the sister of 'git fast-import'\n  fast-export: rename the signed tag mode 'ignore' to 'verbatim'\n  Allow ':/<oneline-prefix>' syntax to work with save_commit_buffer == 0\n\nJohannes Sixt (1):\n  git-commit: Allow to amend a merge commit that does not change the tree\n\nJunio C Hamano (17):\n  Move gitk to its own subdirectory\n  git-branch --contains=commit\n  git-branch --contains: doc and test\n  builtin-tag: accept and process multiple -m just like git-commit\n  \"git-tag -s\" should create a signed annotated tag\n  \"color.diff = true\" is not \"always\" anymore.\n  git-config --get-color: get configured color\n  Update draft release notes for 1.5.4\n  Resurrect peek-remote\n  Consolidate command list to one.\n  Update draft release notes for 1.5.4\n  rename: Break filepairs with different types.\n  git-am: catch missing author date early.\n  git-commit --allow-empty\n  git-commit documentation: fix unfinished sentence.\n  Add git-fast-export to list of commands.\n  Update draft release notes for 1.5.4\n\nKevin Leung (1):\n  git-stash: Display help message if git-stash is run with wrong\n    sub-commands\n\nPierre Habouzit (1):\n  parse-options: Allow to hide options from the default usage.\n\nRobert Schiele (1):\n  install-sh from automake does not like -m without delimiting space\n\nSam Vilain (2):\n  Allow HTTP proxy to be overridden in config\n  Add remote.<name>.proxy\n\nSteven Grimm (1):\n  git-svn: Don't create a \"master\" branch every time rebase is run\n\nTheodore Ts'o (2):\n  Make the list of common commands more exclusive\n  Remove hint to use \"git help -a\"\n\nVineet Kumar (1):\n  git-svn: add a show-externals command.\n\nWincent Colaiuta (1):\n  revert/cherry-pick: Allow overriding the help text by the calling\n    Porcelain\n"},{"id":"61999","messageId":"7vhcixtnm4.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vsl2i6ea4.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-05T10:57:55Z","receivedAt":"2007-12-05T10:57:55Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"I haven't tagged the tip of 'master' as -rc0 yet, this has more than 80%\nof it.  Graduated to 'master' tonight are:\n\n * Wincent's \"git add -p\"\n * \"git commit in C\" by Kristian and others\n * Steffen Prohaska's clean-up of push/fetch refspec handling.\n\n----------------------------------------------------------------\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nAlex Riesen (2):\n  Do not generate full commit log message if it is not going to be used\n  Simplify crud() in ident.c\n\nH.Merijn Brand (1):\n  Do not rely on the exit status of \"unset\" for unset variables\n\nJakub Narebski (1):\n  contrib: Make remotes2config.sh script more robust\n\nJeff King (3):\n  git-commit: clean up die messages\n  quote_path: fix collapsing of relative paths\n  t9600: require cvsps 2.1 to perform tests\n\nJohannes Schindelin (8):\n  launch_editor(): read the file, even when EDITOR=:\n  builtin-commit: fix reflog message generation\n  git status: show relative paths when run in a subdirectory\n  builtin-commit: fix --signoff\n  builtin-commit --s: add a newline if the last line was not a S-o-b\n  builtin-commit: resurrect behavior for multiple -m options\n  builtin-commit: Add newline when showing which commit was created\n  Replace \"runstatus\" with \"status\" in the tests\n\nJunio C Hamano (15):\n  file_exists(): dangling symlinks do exist\n  builtin-commit: do not color status output shown in the message template\n  builtin-commit: run commit-msg hook with correct message file\n  Export three helper functions from ls-files\n  Fix add_files_to_cache() to take pathspec, not user specified list of\n    files\n  builtin-commit: fix partial-commit support\n  git-add -i: allow multiple selection in patch subcommand\n  Add a few more tests for git-commit\n  builtin-add: fix command line building to call interactive\n  add -i: Fix running from a subdirectory\n  Fix --signoff in builtin-commit differently.\n  git-commit: Allow to amend a merge commit that does not change the tree\n  git-commit --allow-empty\n  Documentation/git.txt: typofix\n  t5510: add a bit more tests for fetch\n\nKristian Høgsberg (10):\n  Add testcase for amending and fixing author in git commit.\n  Export launch_editor() and make it accept ':' as a no-op editor.\n  Port git commit to C.\n  builtin-commit: Refresh cache after adding files.\n  Call refresh_cache() when updating the user index for --only commits.\n  builtin-commit: Clean up an unused variable and a debug fprintf().\n  t7501-commit: Add test for git commit <file> with dirty index.\n  builtin-commit: Include the diff in the commit message when verbose.\n  Fix off-by-one error when truncating the diff out of the commit message.\n  Use a strbuf for copying the command line for the reflog.\n\nPascal Obry (1):\n  Set OLD_ICONV on Cygwin.\n\nPierre Habouzit (1):\n  builtin-commit.c: export GIT_INDEX_FILE for launch_editor as well.\n\nRalf Wildenhues (1):\n  Document all help keys in \"git add -i\" patch mode.\n\nShawn Bohrer (1):\n  Make git status usage say git status instead of git commit\n\nShawn O. Pearce (1):\n  Remove git-status from list of scripts as it is builtin\n\nSteffen Prohaska (4):\n  push: support pushing HEAD to real branch name\n  add refname_match()\n  push: use same rules as git-rev-parse to resolve refspecs\n  refactor fetch's ref matching to use refname_match()\n\nWincent Colaiuta (6):\n  Teach builtin-add to pass multiple paths to git-add--interactive\n  Add path-limiting to git-add--interactive\n  Add \"--patch\" option to git-add--interactive\n  Highlight keyboard shortcuts in git-add--interactive\n  add -i: allow prefix highlighting for \"Add untracked\" as well.\n  git-add -i: add help text for list-and-choose UI\n\nİsmail Dönmez (1):\n  gitweb: use Perl built-in utf8 function for UTF-8 decoding.\n"},{"id":"62265","messageId":"7vfxye4yv7.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vhcixtnm4.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-07T09:50:52Z","receivedAt":"2007-12-07T09:50:52Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Heavy merges to 'master' continues.  We are almost there for -rc0.\nMerged to 'master' are:\n\n * Colorized \"add -i\" (Dan Zwell)\n * Talk more about diff options in \"git log\" documentation (Miklos)\n * git-gui 0.9.1 preview\n * Make cvsserver act more like receive-pack (Michael Witten)\n * \"git-clean <paths>\" limits the damage to named paths\n * Use right Perl in Documentation/Makefile\n\nAlso people's favorite topic \"squelching compilation warnings for iconv\"\nis included.\n\n----------------------------------------------------------------\n\n* The 'maint' branch has these fixes since the last announcement.\n\nDavid Symonds (1):\n  Change from using email.com to example.com as example domain, as per RFC\n    2606.\n\nJunio C Hamano (2):\n  git grep shows the same hit repeatedly for unmerged paths\n  git-am -i: report rewritten title\n\nNguyễn Thái Ngọc Duy (3):\n  Add missing inside_work_tree setting in setup_git_directory_gently\n  Do check_repository_format() early\n  Do check_repository_format() early (re-fix)\n\n----------------------------------------------------------------\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nBjörn Steinbrink (1):\n  git config: Don't rely on regexec() returning 1 on non-match\n\nBrian M. Carlson (1):\n  git-gui: Reorder msgfmt command-line arguments\n\nChristian Stimming (2):\n  Update git-gui.pot with latest (few) string additions and changes.\n  Update German translation. 100% completed.\n\nJakub Narebski (1):\n  autoconf: Add test for OLD_ICONV (squelching compiler warning)\n\nJeff King (1):\n  t7300: add test for clean with wildcard pathspec\n\nJohannes Sixt (2):\n  git-gui: Improve the application icon on Windows.\n  for-each-ref: Fix quoting style constants.\n\nJunio C Hamano (12):\n  Run the specified perl in Documentation/\n  git-cvsserver runs hooks/post-update\n  Revert \"git-am: catch missing author date early.\"\n  Documentation: color.* = true means \"auto\"\n  git config --get-colorbool\n  Color support for \"git-add -i\"\n  git-clean: Honor pathspec.\n  config --get-colorbool: diff.color is a deprecated synonym to color.diff\n  hg-to-git: handle an empty dir in hg.\n  do not discard status in fetch_refs_via_pack()\n  git-status documentation: mention subdirectory behaviour\n  Update draft release notes to 1.5.4\n\nKristian Høgsberg (1):\n  Rewrite builtin-fetch option parsing to use parse_options().\n\nMatthias Kestenholz (1):\n  Documentation: add --patch option to synopsis of git-add\n\nMichael Witten (1):\n  git-cvsserver runs hooks/post-receive\n\nMichele Ballabio (2):\n  git-gui: fix a typo in lib/commit.tcl\n  git-gui: update it.po and glossary/it.po\n\nMiklos Vajna (2):\n  Include diff options in the git-log manpage\n  Update Hungarian translation. 100% completed.\n\nNanako Shiraishi (1):\n  Update ja.po for git-gui\n\nRobert Schiele (1):\n  git-gui: install-sh from automake does not like -m755\n\nWincent Colaiuta (1):\n  Silence iconv warnings on Leopard\n"},{"id":"62478","messageId":"7vve78qhtf.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vfxye4yv7.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-09T10:32:44Z","receivedAt":"2007-12-09T10:32:44Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"One more topic remains in 'next' before 1.5.4-rc0 where \"bugfix only\"\nfreeze period begins.  We have a handful regression fixes on 'master'\nfrom the fallout from massive C-rewrite during this cycle.\n\nPeople still following 'next' are requested to switch to 'master', and\nspare a bit more time on finding and fixing regressions there instead of\ncoming up with new topics from now on.\n\n----------------------------------------------------------------\n\n* The 'maint' branch has these fixes since the last announcement.\n\nJim Meyering (1):\n  config.c:store_write_pair(): don't read the byte before a malloc'd\n    buffer.\n\n----------------------------------------------------------------\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nJeff King (3):\n  wt-status.c:quote_path(): convert empty path to \"./\"\n  add status.relativePaths config variable\n  git-status: documentation improvements\n\nJunio C Hamano (13):\n  War on whitespace: first, a bit of retreat.\n  git-diff: complain about >=8 consecutive spaces in initial indent\n  core.whitespace: add test for diff whitespace error highlighting\n  builtin-apply: rename \"whitespace\" variables and fix styles\n  builtin-apply: teach whitespace_rules\n  core.whitespace: documentation updates.\n  Use gitattributes to define per-path whitespace rule\n  git-bisect visualize: work in non-windowed environments better\n  mailmap: fix bogus for() loop that happened to be safe by accident\n  shortlog: code restructuring and clean-up\n  ls-remote: resurrect pattern limit support\n  Fix commit-msg hook to allow editing\n  Re-fix \"builtin-commit: fix --signoff\"\n\nNicolas Pitre (3):\n  pack-objects: fix delta cache size accounting\n  pack-objects: reverse the delta search sort list\n  pack-objects: fix threaded load balancing\n\nPini Reznik (1):\n  Open external merge tool with original file extensions for all three\n    files\n\nSergei Organov (1):\n  Let git-help prefer man-pages installed with this version of git\n\nWincent Colaiuta (4):\n  Teach \"git add -i\" to colorize whitespace errors\n  Allow --no-verify to bypass commit-msg hook\n  Documentation: fix --no-verify documentation for \"git commit\"\n  Add tests for pre-commit and commit-msg hooks\n"},{"id":"62626","messageId":"7vmysijhwq.fsf_-_@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vve78qhtf.fsf@gitster.siamese.dyndns.org","subject":"v1.5.4 plans","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-10T22:37:09Z","receivedAt":"2007-12-10T22:37:09Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"People might have noticed that I've been ignoring most of the new\ntopics/enhancements for the past few days.  Here is what I want to see\nhappen until we declare v1.5.4.\n\nFirst, stabilize 'master' enough and tag v1.5.4-rc0 soon.\n\n * Among what's already in 'next', Christian's \"git help -w\" enhancement\n   is the only candidate to be in v1.5.4.  Johannes's \"git remote\" could\n   also be, but I've seen it fail tests when run in my k.org private\n   repository and haven't had chance to find time to diagnose it, so I'd\n   rather leave it after v1.5.4.\n\n * Eric's sanely-compact mapping from SVN rev-ids to git commits saw a\n   positive feedback.  I haven't carefully read that patch but it seemed\n   sane and I'd like to have it in v1.5.4.\n\n * Please, everybody, no more new features until v1.5.4 final ships, and\n   please spend a bit more time on finding and fixing regressions than\n   you would spend time cooking your favorite new features.  I do not\n   have infinite amount of time to comment on new feature patches while\n   concentrating on fixes at the same time.\n\nThere are outstanding issues that need to be resolved:\n\n * I'd like to see the pack-object's memory performance issue resolved\n   before the release; two very capable people are looking into it and I\n   am fairly optimistic.\n\n * We need to do something about \"gc --aggressive\".  The documentation\n   removal patch from Linus, if it ever materializes, would be better\n   than nothing, but I have this nagging suspicion that the explosion is\n   merely a bad interation between -A and -f option to the repack, which\n   are not meant to be used together.\n\n * We have a handful deprecation notices in the draft release notes, but\n   if I recall correctly, Nico wanted to add a few more.  We need to\n   come up with a wording that is easy to understand for the end users\n   to decide which ancient versions will be affected.\n\n  \"git help -w\" will want to have the HTML pages installed, which means\n   we would need to add a new package to hold it in git.spec.in.  I am\n   willing to work on the initial draft, but help in testing is very\n   much appreciated --- I do not work on RPM systems myself.  The same\n   goes for \"git help -i\" which will want the INFO pages installed.\n\n * I've seen t9119-git-svn-info.sh fail in my k.org private repository\n   and have been skipping the test, but this needs to be diagnosed and\n   fixed [*1*].  It could be just that the code is fine and the test is\n   not rejecting SVN that is too-old. I dunno.\n\n * There have been quite a few HTTP paches from Mike Hommey.  I'd like\n   to limit the changes only to fixes and trivially-correct clean-ups,\n   which means these will need to be looked at:\n\n    [PATCH 1/4] Cleanup variables in http.[ch]\n    [PATCH 2/4] Use strbuf in http code\n    [PATCH 1/5] Remove the default_headers variable from http-push.c\n    [PATCH 2/5] Remove a CURLOPT_HTTPHEADER (un)setting\n    [PATCH 3/5] Avoid redundant declaration of missing_target()\n    [PATCH 4/5] Correctly initialize buffer in start_put() in http-push.c\n    [PATCH 5/5] Fix various memory leaks in http-push.c and http-walker.c\n\n   Help in reviewing these from people who were involved in the http\n   part of the current codebase is very much appreciated.\n\nIf we can freeze by the end of the year, we may be able to release mid\nJanuary 2008.\n\n\n[Footnote]\n----------------------------------------------------------------\n\n*1* t9119 first fails at the 6th test.  Perhaps the test needs to check\nsvn version first and stop testing this feature.  This test does not\nfail on my personal box that has svn 1.4.2.\n\n* expecting success:\n        (cd svnwc; svn info file) > expected.info-file &&\n        (cd gitwc; git-svn info file) > actual.info-file &&\n        git-diff expected.info-file actual.info-file\n\ndiff --git a/expected.info-file b/actual.info-file\nindex b1d57f4..997c927 100644\n--- a/expected.info-file\n+++ b/actual.info-file\n@@ -10,6 +10,5 @@ Last Changed Author: junio\n Last Changed Rev: 1\n Last Changed Date: 2007-12-10 22:18:12 +0000 (Mon, 10 Dec 2007)\n Text Last Updated: 2007-12-10 22:18:13 +0000 (Mon, 10 Dec 2007)\n-Properties Last Updated: 2007-12-10 22:18:13 +0000 (Mon, 10 Dec 2007)\n Checksum: 5bbf5a52328e7439ae6e719dfe712200\n\n* FAIL 6: info file\n\n                (cd svnwc; svn info file) > expected.info-file &&\n                (cd gitwc; git-svn info file) > actual.info-file &&\n                git-diff expected.info-file actual.info-file\n\n: hera t/master; svn --version\nsvn, version 1.3.2 (r19776)\n   compiled Jun  1 2006, 10:05:51\n\nCopyright (C) 2000-2006 CollabNet.\nSubversion is open source software, see http://subversion.tigris.org/\nThis product includes software developed by CollabNet (http://www.Collab.Net/).\n\nThe following repository access (RA) modules are available:\n\n* ra_dav : Module for accessing a repository via WebDAV (DeltaV) protocol.\n  - handles 'http' scheme\n  - handles 'https' scheme\n* ra_svn : Module for accessing a repository using the svn network protocol.\n  - handles 'svn' scheme\n* ra_local : Module for accessing a repository on local disk.\n  - handles 'file' scheme\n\n----------------------------------------------------------------\n"},{"id":"62632","messageId":"20071210234941.GE22254@coredump.intra.peff.net","threadId":"10419","inReplyTo":"7vmysijhwq.fsf_-_@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2007-12-10T23:49:41Z","receivedAt":"2007-12-10T23:49:41Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Dec 10, 2007 at 02:37:09PM -0800, Junio C Hamano wrote:\n\n>  * Please, everybody, no more new features until v1.5.4 final ships, and\n>    please spend a bit more time on finding and fixing regressions than\n>    you would spend time cooking your favorite new features.  I do not\n>    have infinite amount of time to comment on new feature patches while\n>    concentrating on fixes at the same time.\n> \n> There are outstanding issues that need to be resolved:\n\nA few regressions that you did not mention, but I think should be\naddressed before 1.5.4:\n\n - extra newline in builtin-commit output. You found a case that\n   needs it, but fixing it is non-trivial, and I wanted to get your\n   input before preparing a patch. See\n\n     http://mid.gmane.org/20071203075357.GB3614@sigill.intra.peff.net\n\n - git-clean's handling of directory wildcards. I didn't get a response\n   to\n\n     http://mid.gmane.org/20071206043247.GC5499@coredump.intra.peff.net\n\n   I suspect there are still some bugs lurking in there, but it's hard\n   to say because I don't know what the behavior _should_ be (there are\n   some test cases in that email).\n\nAnd perhaps not a regression, but I think we should bring git-svn's\nhandling of color.* in line with the changes to the rest of the code\nbefore 1.5.4. I posted a \"last resort\" patch, but I think with your\nchanges to \"git config --colorbool\" it might be possible to use that.\nI'll try to work up a new patch.\n\n-Peff\n"},{"id":"62636","messageId":"7vtzmqhvgq.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"20071210234941.GE22254@coredump.intra.peff.net","subject":"Re: v1.5.4 plans","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-11T01:27:17Z","receivedAt":"2007-12-11T01:27:17Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff King <peff@peff.net> writes:\n\n> A few regressions that you did not mention, but I think should be\n> addressed before 1.5.4:\n>\n>  - extra newline in builtin-commit output. You found a case that\n>    needs it, but fixing it is non-trivial, and I wanted to get your\n>    input before preparing a patch. See\n>\n>      http://mid.gmane.org/20071203075357.GB3614@sigill.intra.peff.net\n\nI am actually becoming somewhat fond of the newline that makes the end\nof a session that led to a commit stand out ;-). IOW, I was wondering if\nwe can have another for a merge commit case.\n\nBut I suspect that it amounts to the change in the same area and of\nsimilar complexity.\n\n>  - git-clean's handling of directory wildcards. I didn't get a response\n>    to\n>\n>      http://mid.gmane.org/20071206043247.GC5499@coredump.intra.peff.net\n>\n>    I suspect there are still some bugs lurking in there, but it's hard\n>    to say because I don't know what the behavior _should_ be (there are\n>    some test cases in that email).\n\nThe last time I looked at the \"directory\" side of builtin-clean.c, I had\nto quickly reach for my barf bag.  I never use \"git clean\" without \"-n\"\nand I never ever use \"git clean\" with \"-d\"; I do not have any idea what\nbehaviour when given \"-d\" would be useful.  AFAIU, the scripted version\ndid not have clear semantics either.\n\nAnother thing that irritates me is it talks about not removing a\ndirectory when run \"git clean -n\" (without -d).  I did not ask it to\nremove directories, so I did not expect it to talk about it not doing\nwhat I did not ask it to.\n\n> And perhaps not a regression, but I think we should bring git-svn's\n> handling of color.* in line with the changes to the rest of the code\n> before 1.5.4. I posted a \"last resort\" patch, but I think with your\n> changes to \"git config --colorbool\" it might be possible to use that.\n> I'll try to work up a new patch.\n\nThanks for a reminder.  Anything else?\n"},{"id":"62644","messageId":"alpine.LFD.0.99999.0712102249180.555@xanadu.home","threadId":"10419","inReplyTo":"7vmysijhwq.fsf_-_@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Nicolas Pitre","fromEmail":"nico@cam.org","sentAt":"2007-12-11T03:53:50Z","receivedAt":"2007-12-11T03:53:50Z","isPatch":false,"sender":{"key":"nico@fluxnic.net","avatar":"https://avatars.githubusercontent.com/u/702790?v=4"},"body":"On Mon, 10 Dec 2007, Junio C Hamano wrote:\n\n> There are outstanding issues that need to be resolved:\n> \n>  * We need to do something about \"gc --aggressive\".  The documentation\n>    removal patch from Linus, if it ever materializes, would be better\n>    than nothing, but I have this nagging suspicion that the explosion is\n>    merely a bad interation between -A and -f option to the repack, which\n>    are not meant to be used together.\n\nWell, with the gcc repo, simply using 'git repack -a -f' with current \ndefault window size does produce a 2.1GB pack, while changing the window \nsize to 100 (keeping default delta depth) produces a 400MB pack for me.\n\nSo this is really a matter of not having a sufficiently large window for \nsome data sets.\n\n>  * We have a handful deprecation notices in the draft release notes, but\n>    if I recall correctly, Nico wanted to add a few more.  We need to\n>    come up with a wording that is easy to understand for the end users\n>    to decide which ancient versions will be affected.\n\nThis is still on my todo list.\n\n\nNicolas\n"},{"id":"62648","messageId":"7vzlwhhli5.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vtzmqhvgq.fsf@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-11T05:02:26Z","receivedAt":"2007-12-11T05:02:26Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Junio C Hamano <gitster@pobox.com> writes:\n\n> Jeff King <peff@peff.net> writes:\n>\n>> A few regressions that you did not mention, but I think should be\n>> addressed before 1.5.4:\n>>\n>>  - extra newline in builtin-commit output. You found a case that\n>>    needs it, but fixing it is non-trivial, and I wanted to get your\n>>    input before preparing a patch. See\n>>\n>>      http://mid.gmane.org/20071203075357.GB3614@sigill.intra.peff.net\n>\n> I am actually becoming somewhat fond of the newline that makes the end\n> of a session that led to a commit stand out ;-). IOW, I was wondering if\n> we can have another for a merge commit case.\n>\n> But I suspect that it amounts to the change in the same area and of\n> similar complexity.\n\n-- >8 --\n[PATCH] commit: do not add extra LF at the end of the summary.\n\nThe scripted version relied on the nice \"auto-strip the terminating LF\"\nbehaviour shell gives to \"var=$(cmd)\" construct, but we have to roll\nthat ourselves.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>\n---\n builtin-commit.c |   11 ++++++++---\n 1 files changed, 8 insertions(+), 3 deletions(-)\n\ndiff --git a/builtin-commit.c b/builtin-commit.c\nindex b6b81d5..e5a972c 100644\n--- a/builtin-commit.c\n+++ b/builtin-commit.c\n@@ -660,12 +660,17 @@ static void print_summary(const char *prefix, const unsigned char *sha1)\n \trev.verbose_header = 1;\n \trev.show_root_diff = 1;\n \trev.commit_format = get_commit_format(\"format:%h: %s\");\n-\trev.always_show_header = 1;\n+\trev.always_show_header = 0;\n \n \tprintf(\"Created %scommit \", initial_commit ? \"initial \" : \"\");\n \n-\tlog_tree_commit(&rev, commit);\n-\tprintf(\"\\n\");\n+\tif (!log_tree_commit(&rev, commit)) {\n+\t\tstruct strbuf buf = STRBUF_INIT;\n+\t\tpretty_print_commit(rev.commit_format, commit, &buf,\n+\t\t\t\t    0, NULL, NULL, 0, 0);\n+\t\tprintf(\"%s\\n\", buf.buf);\n+\t\tstrbuf_release(&buf);\n+\t}\n }\n \n int git_commit_config(const char *k, const char *v)\n-- \n1.5.3.7-1149-g591a\n"},{"id":"62659","messageId":"20071211061743.GA21718@coredump.intra.peff.net","threadId":"10419","inReplyTo":"7vtzmqhvgq.fsf@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2007-12-11T06:17:43Z","receivedAt":"2007-12-11T06:17:43Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Dec 10, 2007 at 05:27:17PM -0800, Junio C Hamano wrote:\n\n> > And perhaps not a regression, but I think we should bring git-svn's\n> > handling of color.* in line with the changes to the rest of the code\n> > before 1.5.4. I posted a \"last resort\" patch, but I think with your\n> > changes to \"git config --colorbool\" it might be possible to use that.\n> > I'll try to work up a new patch.\n> \n> Thanks for a reminder.  Anything else?\n\n2-patch series will follow momentarily. 1/2 gives --get-colorbool the\nnecessary information for implementing color.pager, and 2/2 fixes\ngit-svn.\n\nVery light testing by me, since I'm not actually a git-svn user, but it\ndoes pass the test scripts. Acks from svn-using people would be nice.\n\n-Peff\n"},{"id":"62663","messageId":"20071211062733.GA21768@coredump.intra.peff.net","threadId":"10419","inReplyTo":"20071211061743.GA21718@coredump.intra.peff.net","subject":"Re: v1.5.4 plans","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2007-12-11T06:27:33Z","receivedAt":"2007-12-11T06:27:33Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"Subject: [PATCH 1/2] Support GIT_PAGER_IN_USE environment variable\n\nWhen deciding whether or not to turn on automatic color\nsupport, git_config_colorbool checks whether stdout is a\ntty. However, because we run a pager, if stdout is not a\ntty, we must check whether it is because we started the\npager. This used to be done by checking the pager_in_use\nvariable.\n\nThis variable was set only when the git program being run\nstarted the pager; there was no way for an external program\nrunning git indicate that it had already started a pager.\nThis patch allows a program to set GIT_PAGER_IN_USE to a\ntrue value to indicate that even though stdout is not a tty,\nit is because a pager is being used.\n\nSigned-off-by: Jeff King <peff@peff.net>\n---\n\nA few notes:\n\nWe could also just put the color.pager logic in git-svn, or in Git.pm,\nand have it impact the stdout_is_tty argument; but the whole point of\n--get-colorbool is to consolidate that logic.\n\nWe convert pager_in_use to a function; we could also just set the\nvariable early on, but I think this lazy evaluation is more robust.\n\nThis might have uses besides --get-colorbool (e.g., wrapper scripts\nwhich start their own pager can still have git sub-commands understand\nwhether to turn on color).\n\n cache.h       |    2 +-\n color.c       |    2 +-\n environment.c |    1 -\n pager.c       |   15 ++++++++++++++-\n 4 files changed, 16 insertions(+), 4 deletions(-)\n\ndiff --git a/cache.h b/cache.h\nindex 1bcb3df..27d90fe 100644\n--- a/cache.h\n+++ b/cache.h\n@@ -608,7 +608,7 @@ extern int write_or_whine_pipe(int fd, const void *buf, size_t count, const char\n /* pager.c */\n extern void setup_pager(void);\n extern char *pager_program;\n-extern int pager_in_use;\n+extern int pager_in_use(void);\n extern int pager_use_color;\n \n extern char *editor_program;\ndiff --git a/color.c b/color.c\nindex 7bd424a..7f66c29 100644\n--- a/color.c\n+++ b/color.c\n@@ -135,7 +135,7 @@ int git_config_colorbool(const char *var, const char *value, int stdout_is_tty)\n  auto_color:\n \tif (stdout_is_tty < 0)\n \t\tstdout_is_tty = isatty(1);\n-\tif (stdout_is_tty || (pager_in_use && pager_use_color)) {\n+\tif (stdout_is_tty || (pager_in_use() && pager_use_color)) {\n \t\tchar *term = getenv(\"TERM\");\n \t\tif (term && strcmp(term, \"dumb\"))\n \t\t\treturn 1;\ndiff --git a/environment.c b/environment.c\nindex f3e3d41..18a1c4e 100644\n--- a/environment.c\n+++ b/environment.c\n@@ -31,7 +31,6 @@ size_t packed_git_window_size = DEFAULT_PACKED_GIT_WINDOW_SIZE;\n size_t packed_git_limit = DEFAULT_PACKED_GIT_LIMIT;\n size_t delta_base_cache_limit = 16 * 1024 * 1024;\n char *pager_program;\n-int pager_in_use;\n int pager_use_color = 1;\n char *editor_program;\n char *excludes_file;\ndiff --git a/pager.c b/pager.c\nindex fb7a1a6..0376953 100644\n--- a/pager.c\n+++ b/pager.c\n@@ -5,6 +5,8 @@\n  * something different on Windows, for example.\n  */\n \n+static int spawned_pager;\n+\n static void run_pager(const char *pager)\n {\n \t/*\n@@ -41,7 +43,7 @@ void setup_pager(void)\n \telse if (!*pager || !strcmp(pager, \"cat\"))\n \t\treturn;\n \n-\tpager_in_use = 1; /* means we are emitting to terminal */\n+\tspawned_pager = 1; /* means we are emitting to terminal */\n \n \tif (pipe(fd) < 0)\n \t\treturn;\n@@ -70,3 +72,14 @@ void setup_pager(void)\n \tdie(\"unable to execute pager '%s'\", pager);\n \texit(255);\n }\n+\n+int pager_in_use(void)\n+{\n+\tconst char *env;\n+\n+\tif (spawned_pager)\n+\t\treturn 1;\n+\n+\tenv = getenv(\"GIT_PAGER_IN_USE\");\n+\treturn env ? git_config_bool(\"GIT_PAGER_IN_USE\", env) : 0;\n+}\n-- \n1.5.3.7.2230.g796d07-dirty\n"},{"id":"62664","messageId":"20071211062842.GB21768@coredump.intra.peff.net","threadId":"10419","inReplyTo":"20071211061743.GA21718@coredump.intra.peff.net","subject":"[PATCH 2/2] git-svn: get color config from --get-colorbool","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2007-12-11T06:28:42Z","receivedAt":"2007-12-11T06:28:42Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"git-config recently learned a --get-colorbool option. By\nusing it, we will get the same color=auto behavior that\nother git commands have.\n\nSpecifically, this fixes the case where \"color.diff = true\"\nmeant \"always\" in git-svn, but \"auto\" in other programs.\n\nSigned-off-by: Jeff King <peff@peff.net>\n---\n git-svn.perl |   35 ++---------------------------------\n 1 files changed, 2 insertions(+), 33 deletions(-)\n\ndiff --git a/git-svn.perl b/git-svn.perl\nindex 9f884eb..1c42c55 100755\n--- a/git-svn.perl\n+++ b/git-svn.perl\n@@ -3969,39 +3969,7 @@ sub cmt_showable {\n }\n \n sub log_use_color {\n-\treturn 1 if $color;\n-\tmy ($dc, $dcvar);\n-\t$dcvar = 'color.diff';\n-\t$dc = `git-config --get $dcvar`;\n-\tif ($dc eq '') {\n-\t\t# nothing at all; fallback to \"diff.color\"\n-\t\t$dcvar = 'diff.color';\n-\t\t$dc = `git-config --get $dcvar`;\n-\t}\n-\tchomp($dc);\n-\tif ($dc eq 'auto') {\n-\t\tmy $pc;\n-\t\t$pc = `git-config --get color.pager`;\n-\t\tif ($pc eq '') {\n-\t\t\t# does not have it -- fallback to pager.color\n-\t\t\t$pc = `git-config --bool --get pager.color`;\n-\t\t}\n-\t\telse {\n-\t\t\t$pc = `git-config --bool --get color.pager`;\n-\t\t\tif ($?) {\n-\t\t\t\t$pc = 'false';\n-\t\t\t}\n-\t\t}\n-\t\tchomp($pc);\n-\t\tif (-t *STDOUT || (defined $pager && $pc eq 'true')) {\n-\t\t\treturn ($ENV{TERM} && $ENV{TERM} ne 'dumb');\n-\t\t}\n-\t\treturn 0;\n-\t}\n-\treturn 0 if $dc eq 'never';\n-\treturn 1 if $dc eq 'always';\n-\tchomp($dc = `git-config --bool --get $dcvar`);\n-\treturn ($dc eq 'true');\n+\treturn $color || Git->repository->get_colorbool('color.diff');\n }\n \n sub git_svn_log_cmd {\n@@ -4060,6 +4028,7 @@ sub config_pager {\n \t} elsif (length $pager == 0 || $pager eq 'cat') {\n \t\t$pager = undef;\n \t}\n+\t$ENV{GIT_PAGER_IN_USE} = defined($pager);\n }\n \n sub run_pager {\n-- \n1.5.3.7.2230.g796d07-dirty\n"},{"id":"62666","messageId":"20071211063941.GB21718@coredump.intra.peff.net","threadId":"10419","inReplyTo":"7vzlwhhli5.fsf@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2007-12-11T06:39:41Z","receivedAt":"2007-12-11T06:39:41Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Dec 10, 2007 at 09:02:26PM -0800, Junio C Hamano wrote:\n\n> [PATCH] commit: do not add extra LF at the end of the summary.\n> \n> The scripted version relied on the nice \"auto-strip the terminating LF\"\n> behaviour shell gives to \"var=$(cmd)\" construct, but we have to roll\n> that ourselves.\n\nThis looks reasonable and generates the correct output as far as I can\ntell, but...\n\n> -\tlog_tree_commit(&rev, commit);\n> -\tprintf(\"\\n\");\n> +\tif (!log_tree_commit(&rev, commit)) {\n> +\t\tstruct strbuf buf = STRBUF_INIT;\n> +\t\tpretty_print_commit(rev.commit_format, commit, &buf,\n> +\t\t\t\t    0, NULL, NULL, 0, 0);\n> +\t\tprintf(\"%s\\n\", buf.buf);\n> +\t\tstrbuf_release(&buf);\n> +\t}\n\nWe are duplicating the \"!shown && ...\" conditional branch from\nlog_tree_commit, which calls show_log. Why are we not calling show_log\ninstead of pretty_print_commit (I understand that show_log should end up\ncalling pretty_print_commit, but it is not immediately obvious that all\nof the extra code in show_log is going to be ignored).\n\n-Peff\n"},{"id":"62667","messageId":"7vd4tdhgnd.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"20071211063941.GB21718@coredump.intra.peff.net","subject":"Re: v1.5.4 plans","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-11T06:47:18Z","receivedAt":"2007-12-11T06:47:18Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff King <peff@peff.net> writes:\n\n> We are duplicating the \"!shown && ...\" conditional branch from\n> log_tree_commit, which calls show_log. Why are we not calling show_log\n> instead of pretty_print_commit (I understand that show_log should end up\n> calling pretty_print_commit, but it is not immediately obvious that all\n> of the extra code in show_log is going to be ignored).\n\nExactly.  I think show_log() has become too complex, and when we want a\noneline userformat, pretty-print-commit is more appropriate to use.\nActually, when I re-review the code, I think the part should use\nformat_commit_message() which is more to the point without any of the\nother \"more generic\" parameter pretty-print-commit takes.\n"},{"id":"62668","messageId":"20071211065400.GA25985@coredump.intra.peff.net","threadId":"10419","inReplyTo":"7vd4tdhgnd.fsf@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2007-12-11T06:54:00Z","receivedAt":"2007-12-11T06:54:00Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Dec 10, 2007 at 10:47:18PM -0800, Junio C Hamano wrote:\n\n> > We are duplicating the \"!shown && ...\" conditional branch from\n> > log_tree_commit, which calls show_log. Why are we not calling show_log\n> > instead of pretty_print_commit (I understand that show_log should end up\n> > calling pretty_print_commit, but it is not immediately obvious that all\n> > of the extra code in show_log is going to be ignored).\n> \n> Exactly.  I think show_log() has become too complex, and when we want a\n> oneline userformat, pretty-print-commit is more appropriate to use.\n> Actually, when I re-review the code, I think the part should use\n> format_commit_message() which is more to the point without any of the\n> other \"more generic\" parameter pretty-print-commit takes.\n\nPerhaps it would be even more readable to simply split the printing of\nthe commit message and the diff. Tracking this bug was a bit confusing.\nIdeally, print_summary would just say:\n\n  print_commit_message(commit);\n  print_diff(commit, \"^commit\");\n\nwhere obviously each of those takes a few lines to say properly. But the\nuse of a combination \"show the log and maybe the diff\" function seems\nlike a shell holdover, trying to avoid spawning too many processes.\n\n-Peff\n"},{"id":"62671","messageId":"7v7ijlhg0o.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"20071211065400.GA25985@coredump.intra.peff.net","subject":"Re: v1.5.4 plans","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-11T07:00:55Z","receivedAt":"2007-12-11T07:00:55Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff King <peff@peff.net> writes:\n\n> Perhaps it would be even more readable to simply split the printing of\n> the commit message and the diff. Tracking this bug was a bit confusing.\n> Ideally, print_summary would just say:\n>\n>   print_commit_message(commit);\n>   print_diff(commit, \"^commit\");\n>\n> where obviously each of those takes a few lines to say properly. But the\n> use of a combination \"show the log and maybe the diff\" function seems\n> like a shell holdover, trying to avoid spawning too many processes.\n\nPerhaps, but that's post 1.5.4.  There is no short-hand to call the\nsingle commit diff-tree and not give any commit header afair.\n\nAnyway, format-commit-message() makes it much more readable ;-)\n\ndiff --git a/builtin-commit.c b/builtin-commit.c\nindex b6b81d5..9cb7589 100644\n--- a/builtin-commit.c\n+++ b/builtin-commit.c\n@@ -660,12 +660,16 @@ static void print_summary(const char *prefix, const unsigned char *sha1)\n \trev.verbose_header = 1;\n \trev.show_root_diff = 1;\n \trev.commit_format = get_commit_format(\"format:%h: %s\");\n-\trev.always_show_header = 1;\n+\trev.always_show_header = 0;\n \n \tprintf(\"Created %scommit \", initial_commit ? \"initial \" : \"\");\n \n-\tlog_tree_commit(&rev, commit);\n-\tprintf(\"\\n\");\n+\tif (!log_tree_commit(&rev, commit)) {\n+\t\tstruct strbuf buf = STRBUF_INIT;\n+\t\tformat_commit_message(commit, \"%h: %s\", &buf);\n+\t\tprintf(\"%s\\n\", buf.buf);\n+\t\tstrbuf_release(&buf);\n+\t}\n }\n \n int git_commit_config(const char *k, const char *v)\n"},{"id":"62673","messageId":"20071211070111.GA25955@coredump.intra.peff.net","threadId":"10419","inReplyTo":"7vtzmqhvgq.fsf@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2007-12-11T07:01:11Z","receivedAt":"2007-12-11T07:01:11Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Dec 10, 2007 at 05:27:17PM -0800, Junio C Hamano wrote:\n\n> >    I suspect there are still some bugs lurking in there, but it's hard\n> >    to say because I don't know what the behavior _should_ be (there are\n> >    some test cases in that email).\n> \n> The last time I looked at the \"directory\" side of builtin-clean.c, I had\n> to quickly reach for my barf bag.  I never use \"git clean\" without \"-n\"\n> and I never ever use \"git clean\" with \"-d\"; I do not have any idea what\n> behaviour when given \"-d\" would be useful.  AFAIU, the scripted version\n> did not have clear semantics either.\n\nI had the same feeling. I am tempted to leave it, then. The\nnon-intuitive behavior I managed to trigger was:\n\n  - _only_ when using git pathspec matching like \"git clean -n '*.ext'\"\n  - confusing in a safe way (trying to remove 'dir.ext' with '*.ext'\n    will accidentally not happen, rather than accidentally happening)\n\nSo unless somebody complains, it is probably not a big problem,\nand I think fixing it will require mucking with pathspec and dir\nmatching internals, which would be nice not to do right before v1.5.4.\n\nOTOH, leaving something that is broken and just hoping nobody will\ncomplain feels kind of wrong. :)\n\n-Peff\n"},{"id":"62674","messageId":"20071211070310.GA26228@coredump.intra.peff.net","threadId":"10419","inReplyTo":"7v7ijlhg0o.fsf@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2007-12-11T07:03:10Z","receivedAt":"2007-12-11T07:03:10Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Dec 10, 2007 at 11:00:55PM -0800, Junio C Hamano wrote:\n\n> Perhaps, but that's post 1.5.4.  There is no short-hand to call the\n> single commit diff-tree and not give any commit header afair.\n\nOK. I was going to add a \"something like this...\" patch to my last\nemail, but realized I had no idea how one would invoke the diff\nmachinery in such a way.\n\n> Anyway, format-commit-message() makes it much more readable ;-)\n\nThe repetition of the format string is a little ugly. But otherwise,\n\nAcked-by: Jeff King <peff@peff.net>\n\n-Peff\n"},{"id":"62676","messageId":"475E36CF.7050207@op5.se","threadId":"10419","inReplyTo":"7vtzmqhvgq.fsf@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Andreas Ericsson","fromEmail":"ae@op5.se","sentAt":"2007-12-11T07:05:51Z","receivedAt":"2007-12-11T07:05:51Z","isPatch":false,"sender":{"key":"ae@op5.se","avatar":"https://gravatar.com/avatar/426e89595c75a8f5252dd0c989e5fabe5bcac616e68557427ad9aef6b0ca342a?d=mp&s=160"},"body":"Junio C Hamano wrote:\n> Jeff King <peff@peff.net> writes:\n> \n>>  - git-clean's handling of directory wildcards. I didn't get a response\n>>    to\n>>\n>>      http://mid.gmane.org/20071206043247.GC5499@coredump.intra.peff.net\n>>\n>>    I suspect there are still some bugs lurking in there, but it's hard\n>>    to say because I don't know what the behavior _should_ be (there are\n>>    some test cases in that email).\n> \n> The last time I looked at the \"directory\" side of builtin-clean.c, I had\n> to quickly reach for my barf bag.  I never use \"git clean\" without \"-n\"\n> and I never ever use \"git clean\" with \"-d\"; I do not have any idea what\n> behaviour when given \"-d\" would be useful.\n\n\nWhen you have a trash directory without any tracked files, clean will not\nby default descend into that directory and thus won't remove neither files\nnor directory. I frequently use one for automated testing, much like git's\ntrash repository, but the only time I do \"git clean -d\" is when building\nthings on a release-server with the repository checked out. It's faster\nthan \"make distclean\", and not all of our projects have a Makefile to begin\nwith. Tacking \"git clean -d\" at the end of test-scripts makes it simple to\nremove all excess cruft in one go.\n\nSo in short, git clean -d can be useful. I have no idea when \"git clean dir\"\nwould be though.\n\n-- \nAndreas Ericsson                   andreas.ericsson@op5.se\nOP5 AB                             www.op5.se\nTel: +46 8-230225                  Fax: +46 8-230231\n"},{"id":"62708","messageId":"20071211125347.GA18140@sigill.intra.peff.net","threadId":"10419","inReplyTo":"7vtzmqhvgq.fsf@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2007-12-11T12:53:47Z","receivedAt":"2007-12-11T12:53:47Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Dec 10, 2007 at 05:27:17PM -0800, Junio C Hamano wrote:\n\n> Thanks for a reminder.  Anything else?\n\nThis bugfix has been sitting in my repo for a few weeks.  When it last\nappeared, you asked if the other code paths needed a similar fix, and I\nverified that they did not, so I think it is complete as-is.\n\n-- >8 --\ngit-clone: print an error message when trying to clone empty repo\n\nPreviously, cloning an empty repository looked like this:\n\n$ (mkdir parent && cd parent && git --bare init)\n$ git-clone parent child\nInitialized empty Git repository in /home/peff/clone/child/.git/\n$ cd child\n-bash: cd: child: No such file or directory\n$ echo 'wtf?' | mail git@vger.kernel.org\n\nNow we at least report that the clone was not successful.\n\nSigned-off-by: Jeff King <peff@peff.net>\n---\n git-clone.sh |    3 ++-\n 1 files changed, 2 insertions(+), 1 deletions(-)\n\ndiff --git a/git-clone.sh b/git-clone.sh\nindex ecf9d89..96a356d 100755\n--- a/git-clone.sh\n+++ b/git-clone.sh\n@@ -297,7 +297,8 @@ yes)\n \t\t\t\t      find objects -type f -print | sed -e 1q)\n \t\t\t# objects directory should not be empty because\n \t\t\t# we are cloning!\n-\t\t\ttest -f \"$repo/$sample_file\" || exit\n+\t\t\ttest -f \"$repo/$sample_file\" ||\n+\t\t\t\tdie \"fatal: cannot clone empty repository\"\n \t\t\tif ln \"$repo/$sample_file\" \"$GIT_DIR/objects/sample\" 2>/dev/null\n \t\t\tthen\n \t\t\t\trm -f \"$GIT_DIR/objects/sample\"\n-- \n1.5.3.7.2224.ge4a5\n"},{"id":"62709","messageId":"Pine.LNX.4.64.2903301355300.27959@racer.site","threadId":"10419","inReplyTo":"alpine.LFD.0.99999.0712102249180.555@xanadu.home","subject":"Re: v1.5.4 plans","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-12-11T12:57:28Z","receivedAt":"2007-12-11T12:57:28Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Mon, 10 Dec 2007, Nicolas Pitre wrote:\n\n> On Mon, 10 Dec 2007, Junio C Hamano wrote:\n> \n> > There are outstanding issues that need to be resolved:\n> > \n> >  * We need to do something about \"gc --aggressive\".  The documentation\n> >    removal patch from Linus, if it ever materializes, would be better\n> >    than nothing, but I have this nagging suspicion that the explosion is\n> >    merely a bad interation between -A and -f option to the repack, which\n> >    are not meant to be used together.\n> \n> Well, with the gcc repo, simply using 'git repack -a -f' with current \n> default window size does produce a 2.1GB pack, while changing the window \n> size to 100 (keeping default delta depth) produces a 400MB pack for me.\n> \n> So this is really a matter of not having a sufficiently large window for \n> some data sets.\n\nSo my dumb patch to simply default to window and depth 250 with \naggressive was not _that_ dumb after all?\n\nCiao,\nDscho\n"},{"id":"62718","messageId":"alpine.LFD.0.99999.0712110853350.555@xanadu.home","threadId":"10419","inReplyTo":"Pine.LNX.4.64.2903301355300.27959@racer.site","subject":"Re: v1.5.4 plans","fromName":"Nicolas Pitre","fromEmail":"nico@cam.org","sentAt":"2007-12-11T13:59:28Z","receivedAt":"2007-12-11T13:59:28Z","isPatch":false,"sender":{"key":"nico@fluxnic.net","avatar":"https://avatars.githubusercontent.com/u/702790?v=4"},"body":"On Fri, 30 Mar 2029, Johannes Schindelin wrote:\n\n> Hi,\n> \n> On Mon, 10 Dec 2007, Nicolas Pitre wrote:\n> \n> > On Mon, 10 Dec 2007, Junio C Hamano wrote:\n> > \n> > > There are outstanding issues that need to be resolved:\n> > > \n> > >  * We need to do something about \"gc --aggressive\".  The documentation\n> > >    removal patch from Linus, if it ever materializes, would be better\n> > >    than nothing, but I have this nagging suspicion that the explosion is\n> > >    merely a bad interation between -A and -f option to the repack, which\n> > >    are not meant to be used together.\n> > \n> > Well, with the gcc repo, simply using 'git repack -a -f' with current \n> > default window size does produce a 2.1GB pack, while changing the window \n> > size to 100 (keeping default delta depth) produces a 400MB pack for me.\n> > \n> > So this is really a matter of not having a sufficiently large window for \n> > some data sets.\n> \n> So my dumb patch to simply default to window and depth 250 with \n> aggressive was not _that_ dumb after all?\n\nProbably not, although this might be rather wasteful on some \nrepositories.  But that's what expectations are for --aggressive.\n\nI wish we could find a way to set some good window default dynamically \nthough.  Or perhaps the filename hashing needs improvements.\n\n\nNicolas\n"},{"id":"62733","messageId":"1197386675.5001.4.camel@hinata.boston.redhat.com","threadId":"10419","inReplyTo":"7vmysijhwq.fsf_-_@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Kristian Høgsberg","fromEmail":"krh@redhat.com","sentAt":"2007-12-11T15:24:35Z","receivedAt":"2007-12-11T15:24:35Z","isPatch":false,"sender":{"key":"krh@redhat.com","avatar":"https://gravatar.com/avatar/763dee6f9594ac474f725b137a39565792928e583ddf59b32befc2907409027e?d=mp&s=160"},"body":"On Mon, 2007-12-10 at 14:37 -0800, Junio C Hamano wrote:\n>  * We have a handful deprecation notices in the draft release notes, but\n>    if I recall correctly, Nico wanted to add a few more.  We need to\n>    come up with a wording that is easy to understand for the end users\n>    to decide which ancient versions will be affected.\n\nCan we deprecate .git/branches?\n\nKristian\n"},{"id":"62769","messageId":"7vmyshdoyu.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"1197386675.5001.4.camel@hinata.boston.redhat.com","subject":"Re: v1.5.4 plans","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-11T19:13:29Z","receivedAt":"2007-12-11T19:13:29Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Kristian Høgsberg <krh@redhat.com> writes:\n\n> On Mon, 2007-12-10 at 14:37 -0800, Junio C Hamano wrote:\n>>  * We have a handful deprecation notices in the draft release notes, but\n>>    if I recall correctly, Nico wanted to add a few more.  We need to\n>>    come up with a wording that is easy to understand for the end users\n>>    to decide which ancient versions will be affected.\n>\n> Can we deprecate .git/branches?\n\nWe deprecated it from the very beginning, in the sense that we never\nwrote into it ourselves, but merely tried to pay attention to what\nothers wrote there.  So I am open to a bullet point that officially\ndeclares the deprecation.\n\nBut we need to come up with a removal schedule.  Say, the first feature\nrelease after June 2008?\n"},{"id":"62942","messageId":"20071212182734.GA28377@untitled","threadId":"10419","inReplyTo":"20071211062842.GB21768@coredump.intra.peff.net","subject":"Re: [PATCH 2/2] git-svn: get color config from --get-colorbool","fromName":"Eric Wong","fromEmail":"normalperson@yhbt.net","sentAt":"2007-12-12T18:27:34Z","receivedAt":"2007-12-12T18:27:34Z","isPatch":true,"sender":{"key":"e@80x24.org","avatar":null},"body":"Jeff King <peff@peff.net> wrote:\n> git-config recently learned a --get-colorbool option. By\n> using it, we will get the same color=auto behavior that\n> other git commands have.\n> \n> Specifically, this fixes the case where \"color.diff = true\"\n> meant \"always\" in git-svn, but \"auto\" in other programs.\n> \n> Signed-off-by: Jeff King <peff@peff.net>\n\nAcked-by: Eric Wong <normalperson@yhbt.net>\n\n> ---\n>  git-svn.perl |   35 ++---------------------------------\n>  1 files changed, 2 insertions(+), 33 deletions(-)\n> \n> diff --git a/git-svn.perl b/git-svn.perl\n> index 9f884eb..1c42c55 100755\n> --- a/git-svn.perl\n> +++ b/git-svn.perl\n> @@ -3969,39 +3969,7 @@ sub cmt_showable {\n>  }\n>  \n>  sub log_use_color {\n> -\treturn 1 if $color;\n> -\tmy ($dc, $dcvar);\n> -\t$dcvar = 'color.diff';\n> -\t$dc = `git-config --get $dcvar`;\n> -\tif ($dc eq '') {\n> -\t\t# nothing at all; fallback to \"diff.color\"\n> -\t\t$dcvar = 'diff.color';\n> -\t\t$dc = `git-config --get $dcvar`;\n> -\t}\n> -\tchomp($dc);\n> -\tif ($dc eq 'auto') {\n> -\t\tmy $pc;\n> -\t\t$pc = `git-config --get color.pager`;\n> -\t\tif ($pc eq '') {\n> -\t\t\t# does not have it -- fallback to pager.color\n> -\t\t\t$pc = `git-config --bool --get pager.color`;\n> -\t\t}\n> -\t\telse {\n> -\t\t\t$pc = `git-config --bool --get color.pager`;\n> -\t\t\tif ($?) {\n> -\t\t\t\t$pc = 'false';\n> -\t\t\t}\n> -\t\t}\n> -\t\tchomp($pc);\n> -\t\tif (-t *STDOUT || (defined $pager && $pc eq 'true')) {\n> -\t\t\treturn ($ENV{TERM} && $ENV{TERM} ne 'dumb');\n> -\t\t}\n> -\t\treturn 0;\n> -\t}\n> -\treturn 0 if $dc eq 'never';\n> -\treturn 1 if $dc eq 'always';\n> -\tchomp($dc = `git-config --bool --get $dcvar`);\n> -\treturn ($dc eq 'true');\n> +\treturn $color || Git->repository->get_colorbool('color.diff');\n>  }\n>  \n>  sub git_svn_log_cmd {\n> @@ -4060,6 +4028,7 @@ sub config_pager {\n>  \t} elsif (length $pager == 0 || $pager eq 'cat') {\n>  \t\t$pager = undef;\n>  \t}\n> +\t$ENV{GIT_PAGER_IN_USE} = defined($pager);\n>  }\n>  \n>  sub run_pager {\n> -- \n> 1.5.3.7.2230.g796d07-dirty\n> \n\n-- \nEric Wong\n"},{"id":"62945","messageId":"20071212184022.GB28377@untitled","threadId":"10419","inReplyTo":"7vmysijhwq.fsf_-_@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"Eric Wong","fromEmail":"normalperson@yhbt.net","sentAt":"2007-12-12T18:40:22Z","receivedAt":"2007-12-12T18:40:22Z","isPatch":false,"sender":{"key":"e@80x24.org","avatar":null},"body":"Junio C Hamano <gitster@pobox.com> wrote:\n> People might have noticed that I've been ignoring most of the new\n> topics/enhancements for the past few days.  Here is what I want to see\n> happen until we declare v1.5.4.\n> \n> First, stabilize 'master' enough and tag v1.5.4-rc0 soon.\n\n>  * Eric's sanely-compact mapping from SVN rev-ids to git commits saw a\n>    positive feedback.  I haven't carefully read that patch but it seemed\n>    sane and I'd like to have it in v1.5.4.\n\nIt's looking good for most users, I think it's safe enough for 1.5.4\n\n>  * I've seen t9119-git-svn-info.sh fail in my k.org private repository\n>    and have been skipping the test, but this needs to be diagnosed and\n>    fixed [*1*].  It could be just that the code is fine and the test is\n>    not rejecting SVN that is too-old. I dunno.\n\nI wouldn't mind dropping this test for now.\n\n100% output compatibility with SVN is too difficult to achieve\nand IMHO not worth it for commands like `info' and `log'.\n\nDavid:\n\nI also noticed some race-conditions on this test when running this on my\nCentrino laptop (my fastest box, but I rarely use it for git\ndevelopment) and having git on my USB thumb drive.  I'm pretty sure\nthese were caused by inconsistencies in handling timestamps on symlinks\nvs timestamps on the files they link to.\n\n> *1* t9119 first fails at the 6th test.  Perhaps the test needs to check\n> svn version first and stop testing this feature.  This test does not\n> fail on my personal box that has svn 1.4.2.\n> \n> * expecting success:\n>         (cd svnwc; svn info file) > expected.info-file &&\n>         (cd gitwc; git-svn info file) > actual.info-file &&\n>         git-diff expected.info-file actual.info-file\n> \n> diff --git a/expected.info-file b/actual.info-file\n> index b1d57f4..997c927 100644\n> --- a/expected.info-file\n> +++ b/actual.info-file\n> @@ -10,6 +10,5 @@ Last Changed Author: junio\n>  Last Changed Rev: 1\n>  Last Changed Date: 2007-12-10 22:18:12 +0000 (Mon, 10 Dec 2007)\n>  Text Last Updated: 2007-12-10 22:18:13 +0000 (Mon, 10 Dec 2007)\n> -Properties Last Updated: 2007-12-10 22:18:13 +0000 (Mon, 10 Dec 2007)\n>  Checksum: 5bbf5a52328e7439ae6e719dfe712200\n> \n> * FAIL 6: info file\n> \n>                 (cd svnwc; svn info file) > expected.info-file &&\n>                 (cd gitwc; git-svn info file) > actual.info-file &&\n>                 git-diff expected.info-file actual.info-file\n> \n> : hera t/master; svn --version\n> svn, version 1.3.2 (r19776)\n\n-- \nEric Wong\n"},{"id":"62956","messageId":"7vodcv7kw6.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"20071212184022.GB28377@untitled","subject":"Re: v1.5.4 plans","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-12T19:50:17Z","receivedAt":"2007-12-12T19:50:17Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Eric Wong <normalperson@yhbt.net> writes:\n\n> David:\n>\n> I also noticed some race-conditions on this test when running this on my\n> Centrino laptop (my fastest box, but I rarely use it for git\n> development) and having git on my USB thumb drive.  I'm pretty sure\n> these were caused by inconsistencies in handling timestamps on symlinks\n> vs timestamps on the files they link to.\n\nI actually saw that for the first time on my primary box during the\nnightly rebuild last night.  I'll disable the test for now --- if we can\nspot and fix the race by the release, that's good, otherwise, shipping\nthe test disabled is also fine, too.\n"},{"id":"62966","messageId":"772829.29268.qm@web52407.mail.re2.yahoo.com","threadId":"10419","inReplyTo":"7vodcv7kw6.fsf@gitster.siamese.dyndns.org","subject":"Re: v1.5.4 plans","fromName":"David D. Kilzer","fromEmail":"ddkilzer@kilzer.net","sentAt":"2007-12-12T22:21:57Z","receivedAt":"2007-12-12T22:21:57Z","isPatch":false,"sender":{"key":"ddkilzer@kilzer.net","avatar":"https://avatars.githubusercontent.com/u/263571?v=4"},"body":"Junio C Hamano <gitster@pobox.com> wrote:\n\n> Eric Wong <normalperson@yhbt.net> writes:\n> \n> > I also noticed some race-conditions on this test when running this on my\n> > Centrino laptop (my fastest box, but I rarely use it for git\n> > development) and having git on my USB thumb drive.  I'm pretty sure\n> > these were caused by inconsistencies in handling timestamps on symlinks\n> > vs timestamps on the files they link to.\n> \n> I actually saw that for the first time on my primary box during the\n> nightly rebuild last night.  I'll disable the test for now --- if we can\n> spot and fix the race by the release, that's good, otherwise, shipping\n> the test disabled is also fine, too.\n\nI'll see if I can reproduce it and figure out where the race is happening.\n\nDave\n"},{"id":"62973","messageId":"7vbq8v5n0u.fsf_-_@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vve78qhtf.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-13T02:47:13Z","receivedAt":"2007-12-13T02:47:13Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"The tip of 'master' is now tagged as 1.5.4-rc0.  Tarballs are found in\nthe usual places:\n\n  http://www.kernel.org/pub/software/scm/git/\n\n  git-1.5.4.rc0.tar.{gz,bz2}\t\t\t(tarball)\n  git-htmldocs-1.5.4.rc0.tar.{gz,bz2}\t\t(preformatted docs)\n  git-manpages-1.5.4.rc0.tar.{gz,bz2}\t\t(preformatted docs)\n\nI've also built a set of preview RPM packages.  They are found in:\n\n  http://www.kernel.org/pub/software/scm/git/testing/\n\nI am not an RPM person.  It would be really appreciated if experts help\nout finding and fixing any bug in the packaging.  I do not want to\nrepeat the firefighting we needed with 1.5.3.1.\n\n----------------------------------------------------------------\n* The 'master' branch has these since the last announcement.\n\nAlex Riesen (1):\n  Fix git-fast-export for zero-sized blobs\n\nAlexandre Julliard (1):\n  git.el: Added a menu for git-status-mode.\n\nCharles Bailey (1):\n  Fix clone not to ignore depth when performing a local clone\n\nChristian Couder (5):\n  git-help: add -i|--info option to display info page.\n  Documentation: describe -i/--info option to \"git-help\"\n  git-help: add -w|--web option to display html man page in a browser.\n  Use {web,instaweb,help}.browser config options.\n  Documentation: describe -w/--web option to \"git-help\".\n\nDaniel Barkalow (1):\n  Add more checkout tests\n\nEric Wong (2):\n  git-svn: replace .rev_db with a more space-efficient .rev_map format\n  git-svn: reinstate old rev_db optimization in new rev_map\n\nEyvind Bernhardsen (1):\n  Fix mis-markup of the -p, --patch option in git-add(1)\n\nGerrit Pape (1):\n  Don't cache DESTDIR in perl/perl.mak.\n\nJakub Narebski (1):\n  autoconf: Check asciidoc version to automatically set ASCIIDOC8\n\nJeff King (6):\n  don't mention index refreshing side effect in git-status docs\n  Add git-browse-help to .gitignore\n  Support GIT_PAGER_IN_USE environment variable\n  git-svn: get color config from --get-colorbool\n  shortlog: document -e option\n  git-clone: print an error message when trying to clone empty repo\n\nJohannes Sixt (1):\n  Fix a typo in checkout.sh and cleanup one-line help messages\n\nJunio C Hamano (18):\n  git-shortlog -e: show e-mail address as well\n  Re-fix ls-remote\n  Update draft Release Notes for 1.5.4\n  Documentation: add gitman.info target\n  git-help -i: invoke info with document and node name\n  git-help -i: show info documentation from matching version of git\n  send-email: do not muck with initial-reply-to when unset.\n  commit: do not add extra LF at the end of the summary.\n  Support a merge with conflicting gitlink change\n  blame: drop blob data after passing blame to the parent\n  shortlog: default to HEAD when the standard input is a tty\n  git-diff --numstat -z: make it machine readable\n  disable t9119 for now.\n  Documentation: rename git.texi to user-manual.texi\n  git.spec.in: remove python_path\n  git-help -w: do not require to be in git repository\n  RPM spec: Adjust htmldir\n  GIT 1.5.4-rc0\n\nLinus Torvalds (1):\n  \"git tag -u keyname\" broken\n\nMike Hommey (4):\n  git-send-email.perl: Really add angle brackets to In-Reply-To if\n    necessary\n  Cleanup variables in http.[ch]\n  Fix small memory leaks induced by diff_tree_setup_paths\n  Fix XML parser leaks in http-push\n\nNguyễn Thái Ngọc Duy (1):\n  Remove repo version check from setup_git_directory\n\nNicolas Pitre (1):\n  pack-objects: more threaded load balancing fix with often changed paths\n\nPierre Habouzit (1):\n  Invert numbers and names in the git-shortlog summary mode.\n\nWincent Colaiuta (5):\n  Interactive editor tests for commit-msg hook\n  Style fixes for pre-commit hook tests\n  Use \"whitespace\" consistently\n  Documentation: minor grammar fix for \"git apply\"\n  Fix \"diff --check\" whitespace detection\n"},{"id":"62976","messageId":"7v1w9r5m03.fsf_-_@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vbq8v5n0u.fsf_-_@gitster.siamese.dyndns.org","subject":"[PATCH] git-commit: squelch needless message during an empty merge","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-13T03:09:16Z","receivedAt":"2007-12-13T03:09:16Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"When recording a merge that conflicted and ends up in no changes after\nmanual resolution, commit callchain looked like this:\n\n\tcmd_commit() ->\n            prepare_log_message() ->\n                run_status() ->\n\t\t    wt_status_print()\n\nThis invocation of run_status() is asked to find out if there is a\ncommittable change, but it unconditionally gave instructions such as\n\"use git-add\" at the same time.  When in merge, we do allow an empty\nchange to be recorded, so after showing this message the code still went\nahead and made a commit.\n\nThis introduces \"nowarn\" parameter to run_status() to avoid these\nuseless messages.  If we are not allowed to create an empty commit, we\nalready call run_status() again in the original codepath, and the\nmessage will be shown from that call anyway.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>\n---\n builtin-commit.c |    9 +++++----\n wt-status.c      |    2 ++\n wt-status.h      |    1 +\n 3 files changed, 8 insertions(+), 4 deletions(-)\n\ndiff --git a/builtin-commit.c b/builtin-commit.c\nindex 9cb7589..ad9f921 100644\n--- a/builtin-commit.c\n+++ b/builtin-commit.c\n@@ -280,7 +280,7 @@ static char *prepare_index(int argc, const char **argv, const char *prefix)\n \treturn false_lock.filename;\n }\n \n-static int run_status(FILE *fp, const char *index_file, const char *prefix)\n+static int run_status(FILE *fp, const char *index_file, const char *prefix, int nowarn)\n {\n \tstruct wt_status s;\n \n@@ -296,6 +296,7 @@ static int run_status(FILE *fp, const char *index_file, const char *prefix)\n \ts.untracked = untracked_files;\n \ts.index_file = index_file;\n \ts.fp = fp;\n+\ts.nowarn = nowarn;\n \n \twt_status_print(&s);\n \n@@ -412,7 +413,7 @@ static int prepare_log_message(const char *index_file, const char *prefix)\n \n \tsaved_color_setting = wt_status_use_color;\n \twt_status_use_color = 0;\n-\tcommitable = run_status(fp, index_file, prefix);\n+\tcommitable = run_status(fp, index_file, prefix, 1);\n \twt_status_use_color = saved_color_setting;\n \n \tfclose(fp);\n@@ -606,7 +607,7 @@ int cmd_status(int argc, const char **argv, const char *prefix)\n \n \tindex_file = prepare_index(argc, argv, prefix);\n \n-\tcommitable = run_status(stdout, index_file, prefix);\n+\tcommitable = run_status(stdout, index_file, prefix, 0);\n \n \trollback_index_files();\n \n@@ -717,7 +718,7 @@ int cmd_commit(int argc, const char **argv, const char *prefix)\n \n \tif (!prepare_log_message(index_file, prefix) && !in_merge &&\n \t    !allow_empty && !(amend && is_a_merge(head_sha1))) {\n-\t\trun_status(stdout, index_file, prefix);\n+\t\trun_status(stdout, index_file, prefix, 0);\n \t\trollback_index_files();\n \t\tunlink(commit_editmsg);\n \t\treturn 1;\ndiff --git a/wt-status.c b/wt-status.c\nindex 51c1879..c0c2472 100644\n--- a/wt-status.c\n+++ b/wt-status.c\n@@ -381,6 +381,8 @@ void wt_status_print(struct wt_status *s)\n \tif (!s->commitable) {\n \t\tif (s->amend)\n \t\t\tfprintf(s->fp, \"# No changes\\n\");\n+\t\telse if (s->nowarn)\n+\t\t\t; /* nothing */\n \t\telse if (s->workdir_dirty)\n \t\t\tprintf(\"no changes added to commit (use \\\"git add\\\" and/or \\\"git commit -a\\\")\\n\");\n \t\telse if (s->workdir_untracked)\ndiff --git a/wt-status.h b/wt-status.h\nindex 63d50f2..02afaa6 100644\n--- a/wt-status.h\n+++ b/wt-status.h\n@@ -17,6 +17,7 @@ struct wt_status {\n \tint verbose;\n \tint amend;\n \tint untracked;\n+\tint nowarn;\n \t/* These are computed during processing of the individual sections */\n \tint commitable;\n \tint workdir_dirty;\n"},{"id":"62979","messageId":"20071213043428.GB24213@coredump.intra.peff.net","threadId":"10419","inReplyTo":"7v1w9r5m03.fsf_-_@gitster.siamese.dyndns.org","subject":"Re: [PATCH] git-commit: squelch needless message during an empty merge","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2007-12-13T04:34:28Z","receivedAt":"2007-12-13T04:34:28Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Wed, Dec 12, 2007 at 07:09:16PM -0800, Junio C Hamano wrote:\n\n> This introduces \"nowarn\" parameter to run_status() to avoid these\n> useless messages.  If we are not allowed to create an empty commit, we\n> already call run_status() again in the original codepath, and the\n> message will be shown from that call anyway.\n\nLooks good to me.\n\nAcked-by: Jeff King <peff@peff.net>\n\n-Peff\n"},{"id":"62989","messageId":"4760E341.4070309@viscovery.net","threadId":"10419","inReplyTo":"7v1w9r5m03.fsf_-_@gitster.siamese.dyndns.org","subject":"Re: [PATCH] git-commit: squelch needless message during an empty merge","fromName":"Johannes Sixt","fromEmail":"j.sixt@viscovery.net","sentAt":"2007-12-13T07:46:09Z","receivedAt":"2007-12-13T07:46:09Z","isPatch":true,"sender":{"key":"j6t@kdbg.org","avatar":"https://avatars.githubusercontent.com/u/14810926?v=4"},"body":"Junio C Hamano schrieb:\n> This introduces \"nowarn\" parameter to run_status() to avoid these\n> useless messages.\n\nHmpf. We don't need no double negations, no?\n\n-- Hannes\n"},{"id":"63378","messageId":"7vy7btaf4p.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vbq8v5n0u.fsf_-_@gitster.siamese.dyndns.org","subject":"What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-17T08:40:06Z","receivedAt":"2007-12-17T08:40:06Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Sorry for the \"\\No newline at the end\" brown paper bag bug, which\nhappened soon after -rc0 but now fixed.  Thanks Jeff.\n\n\"git diff --check\" was inconsistent with the highlighting of whitespace\nproblems and was harder to use from scripts (which makes it a usability\nbug).  Both have been fixed.  Thanks Wincent.\n\nA handful \"gitweb\" fixes I forgot to apply earlier are now in.  Thanks\nJakub.\n\nA \"git commit\" regression has been noticed --- the post-commit summary\nwas inconsistent with what is shown by git-status before making the\ncommit.  Thanks Daniel.\n\nA workaround for massive commit that exceeds command line limit when\nissuing \"cvs status list-of-files\" has been added.  Thanks Jeff.\n\nHopefully the final round of clean-up until 1.5.4 in whitespace area has\nbeen applied.  Thanks Wincent and Bruce.\n\nI am reasonably happy that we are finding and fixing bugs.  Please keep\nthe fixes, including documentation updates, flowing in.\n\n * \"git -p ls-tree HEAD\" in a bare repository is still not fixed.\n\n   http://thread.gmane.org/gmane.comp.version-control.git/68209?focus=68221\n   http://thread.gmane.org/gmane.comp.version-control.git/68209?focus=68338\n\n * Hannes says \"thread pack-objects\" improvements needs a follow-up\n   patch; it hasn't been applied here yet.\n\n * option parser regression fix really needs to be in by -rc1, but I\n   just applied the initial round of Pierre's patches today.  See\n   \"What's cooking\" for the list.\n\nI need to coordinate with subsystem people and pull in changes for\ngitk, git-gui, user manual and git-svn.\n\n----------------------------------------------------------------\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nAndy Whitcroft (1):\n  git-svn: expand handling of From: and Signed-off-by:\n\nChristian Couder (1):\n  git-help: add \"help.format\" config variable.\n\nDavid S. Miller (1):\n  fast-import: fix unalinged allocation and access\n\nEric Wong (2):\n  git-svn: unlink internal index files after operations\n  git-svn: handle our top-level path being deleted and later re-added\n\nJ. Bruce Fields (8):\n  whitespace: fix off-by-one error in non-space-in-indent checking\n  whitespace: reorganize initial-indent check\n  whitespace: minor cleanup\n  whitespace: fix initial-indent checking\n  whitespace: more accurate initial-indent highlighting\n  whitespace: fix config.txt description of indent-with-non-tab\n  builtin-apply: minor cleanup of whitespace detection\n  builtin-apply: stronger indent-with-on-tab fixing\n\nJakub Narebski (2):\n  gitweb: disambiguate heads and tags withs the same name\n  gitweb: Teach \"a=blob\" action to be more lenient about blob/file mime\n    type\n\nJeff King (4):\n  cvsexportcommit: fix massive commits\n  trim_common_tail: brown paper bag fix.\n  teach bash completion to treat commands with \"--\" as a helper\n  rename git-browse--help to git-help--browse\n\nJohannes Sixt (1):\n  threaded pack-objects: Use condition variables for thread communication.\n\nJunio C Hamano (15):\n  git-commit: squelch needless message during an empty merge\n  xdl_diff: identify call sites.\n  xdi_diff: trim common trailing lines\n  diff --check: minor fixups\n  xdiff tail trimming: use correct type.\n  commit: allow --amend to reuse message from another commit\n  remote: Fix bogus make_branch() call in configuration reader.\n  Rename git-browse-help helper to git-browse--help\n  Retire git-runstatus for real.\n  Start preparing the API documents.\n  Update draft release notes for 1.5.4\n  Re-re-re-fix common tail optimization\n  builtin-commit: fix summary output.\n  builtin-commit: make summary output consistent with status\n  Documentation/git-submodule: refer to gitmodules(5)\n\nKristian Høgsberg (1):\n  Use a strbuf for building up section header and key/value pair strings.\n\nLi Hong (1):\n  Fix a memory leak\n\nMike Hommey (8):\n  Fix some more memory leaks in http-push.c\n  Fix random sha1 in error message in http-fetch and http-push\n  Remove the default_headers variable from http-push.c\n  Remove a CURLOPT_HTTPHEADER (un)setting\n  Avoid redundant declaration of missing_target()\n  Use strbuf in http code\n  Fix various memory leaks in http-push.c and http-walker.c\n  Move fetch_ref from http-push.c and http-walker.c to http.c\n\nNicolas Pitre (1):\n  provide advance warning of some future pack default changes\n\nPetr Baudis (1):\n  gitweb: Make config_to_multi return [] instead of [undef]\n\nShawn Bohrer (1):\n  Fix spelling mistakes in user manual\n\nWincent Colaiuta (6):\n  \"diff --check\" should affect exit status\n  Unify whitespace checking\n  Make \"diff --check\" output match \"git apply\"\n  Add tests for \"git diff --check\" with core.whitespace options\n  Use shorter error messages for whitespace problems\n  Test interaction between diff --check and --exit-code\n\nanonymous (1):\n  Documentation: describe pack idx v2\n"},{"id":"63492","messageId":"91897EB1-B11A-4F88-B771-F0935FAD4A55@zib.de","threadId":"10419","inReplyTo":"7vbq8v5n0u.fsf_-_@gitster.siamese.dyndns.org","subject":"Re: What's in git.git (stable frozen)","fromName":"Steffen Prohaska","fromEmail":"prohaska@zib.de","sentAt":"2007-12-17T21:52:04Z","receivedAt":"2007-12-17T21:52:04Z","isPatch":false,"sender":{"key":"prohaska@zib.de","avatar":"https://avatars.githubusercontent.com/u/217580?v=4"},"body":"\nOn Dec 13, 2007, at 3:47 AM, Junio C Hamano wrote:\n\n> The tip of 'master' is now tagged as 1.5.4-rc0.  Tarballs are found in\n> the usual places:\n\nA fresh msysgit self-contained Windows setup is available from\n\nhttp://msysgit.googlecode.com/files/Git-1.5.4-rc0-preview20071217.exe\n\n\tSteffen\n"},{"id":"64033","messageId":"7vfxxtu5ov.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vy7btaf4p.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-23T09:21:52Z","receivedAt":"2007-12-23T09:21:52Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Stabilization cycle towards -rc2 continues.\n\nThe main point of -rc cycle is regression fixes and general\nbugfixes, although a few new features managed to slip in.\n\n - diff.external configuration variable serves the same purpose\n   as GIT_EXTERNAL_DIFF environment;\n\n - \"git diff --src-prefix=l/ --dst-prefix=k/\" can be used to\n   change the usual prefix (i.e. a/foo vs. b/foo).\n\n----------------------------------------------------------------\n\n* The 'maint' branch has these fixes since the last announcement.\n\nJeff King (2):\n  clone: correctly report http_fetch errors\n  git-send-email: avoid duplicate message-ids\n\n\n* The 'master' branch has these since the last announcement\n  in addition to the above.\n\nCharles Bailey (2):\n  Fix git-instaweb breakage on MacOS X due to the limited sed functionality\n  Remove old generated files from .gitignore.\n\nEric Wong (3):\n  git-svn: avoid leaving leftover committer/author info in rebase\n  git-svn: workaround a for broken symlinks in SVN\n  git-svn: avoid warning when run without arguments\n\nFinn Arne Gangstad (1):\n  Improved submodule merge support\n\nGustaf Hendeby (1):\n  Make git send-email accept $EDITOR with arguments\n\nH.Merijn Brand (1):\n  the use of 'tr' in the test suite isn't really portable\n\nJakub Narebski (1):\n  gitweb: fix whitespace in config_to_multi (indent with tab)\n\nJeff King (2):\n  test \"git clone -o\"\n  clean up 1.5.4 release notes\n\nJim Meyering (2):\n  git-filter-branch.sh: more portable tr usage: use \\012, not \\n.\n  Don't dereference NULL upon lookup failure.\n\nJohannes Schindelin (6):\n  Support config variable diff.external\n  Document diff.external and mergetool.<tool>.path\n  rebase -p -i: handle \"no changes\" gracefully\n  git show <tag>: show the tagger\n  Teach diff machinery to display other prefixes than \"a/\" and \"b/\"\n  Mention git-shell's \"cvs\" substitution in the RelNotes\n\nJohannes Sixt (3):\n  Plug a resource leak in threaded pack-objects code.\n  Clean up documentation that references deprecated 'git peek-remote'.\n  filter-branch: Remove broken and unnecessary summary of rewritten refs.\n\nJunio C Hamano (8):\n  builtin-blame.c: remove unneeded memclr()\n  GIT 1.5.4-rc1\n  t4024: fix test script to use simpler sed pattern\n  fix git commit --amend -m \"new message\"\n  shell-scripts usage(): consistently exit with non-zero\n  Documentation: ls-files -v is about \"assume unchanged\".\n  Fix $EDITOR regression introduced by rewrite in C.\n  Documentation: describe 'union' low-level merge driver\n\nLinus Torvalds (2):\n  unpack-trees: FLEX_ARRAY fix\n  Re(-re)*fix trim_common_tail()\n\nMarco Roeland (1):\n  clone: fix options '-o' and '--origin' to be recognised again\n\nMiklos Vajna (1):\n  everyday: replace 'prune' and 'repack' with 'gc'\n\nNicolas Pitre (2):\n  fix style of a few comments in diff-delta.c\n  make 'git describe --all --contains' work\n\nPierre Habouzit (4):\n  Fix segfault in diff-delta.c when FLEX_ARRAY is 1\n  git-tag: fix -l switch handling regression.\n  Force the sticked form for options with optional arguments.\n  parse-options: Add a gitcli(5) man page.\n\nRalf Wildenhues (1):\n  Fix some documentation typos.\n\nSam Vilain (1):\n  Clarify error response from 'git fetch' for bad responses\n\nSean Estabrooks (1):\n  Fix interactive rebase to preserve author email address\n\nShawn O. Pearce (3):\n  Avoid update hook during git-rebase --interactive\n  Catch and handle git-commit failures in git-rebase --interactive\n  Reallow git-rebase --interactive --continue if commit is unnecessary\n\nStefan Sperling (1):\n  Small comment fix for git-cvsimport.\n\nWincent Colaiuta (1):\n  Emit helpful status for accidental \"git stash\" save\n"},{"id":"64245","messageId":"377939.62541.qm@web52402.mail.re2.yahoo.com","threadId":"10419","inReplyTo":"20071212184022.GB28377@untitled","subject":"Re: v1.5.4 plans","fromName":"David D. Kilzer","fromEmail":"ddkilzer@kilzer.net","sentAt":"2007-12-31T03:56:41Z","receivedAt":"2007-12-31T03:56:41Z","isPatch":false,"sender":{"key":"ddkilzer@kilzer.net","avatar":"https://avatars.githubusercontent.com/u/263571?v=4"},"body":"Eric Wong <normalperson@yhbt.net> wrote:\n> Junio C Hamano <gitster@pobox.com> wrote:\n> >  * I've seen t9119-git-svn-info.sh fail in my k.org private repository\n> >    and have been skipping the test, but this needs to be diagnosed and\n> >    fixed [*1*].  It could be just that the code is fine and the test is\n> >    not rejecting SVN that is too-old. I dunno.\n> \n> I wouldn't mind dropping this test for now.\n> \n> 100% output compatibility with SVN is too difficult to achieve\n> and IMHO not worth it for commands like `info' and `log'.\n> \n> David:\n> \n> I also noticed some race-conditions on this test when running this on my\n> Centrino laptop (my fastest box, but I rarely use it for git\n> development) and having git on my USB thumb drive.  I'm pretty sure\n> these were caused by inconsistencies in handling timestamps on symlinks\n> vs timestamps on the files they link to.\n\nThe problem is that 'svn info' is reading the mtime from its hidden backup file\n(in the .svn directory) instead of the file in the working directory, so\nsetting the mtime (and atime) of the git working copy file using the svn\nworking copy doesn't always work.\n\nI'm working on a solution now.\n\nDave\n"},{"id":"64277","messageId":"1199131665-1633-1-git-send-email-ddkilzer@kilzer.net","threadId":"10419","inReplyTo":"377939.62541.qm@web52402.mail.re2.yahoo.com","subject":"[PATCH] Fix race condition in t9119-git-svn-info.sh","fromName":"David D. Kilzer","fromEmail":"ddkilzer@kilzer.net","sentAt":"2007-12-31T20:07:45Z","receivedAt":"2007-12-31T20:07:45Z","isPatch":true,"sender":{"key":"ddkilzer@kilzer.net","avatar":"https://avatars.githubusercontent.com/u/263571?v=4"},"body":"Changed the ptouch bash function to use the \"Text Last Updated\"\ndate reported by 'svn info' when changing the modified time\n(mtime) of the file/symlink/directory in the git working\ndirectory.  Previously it used the mtime of the item in the\nsvn working directory, which caused the race condition.\n\nSigned-off-by: David D. Kilzer <ddkilzer@kilzer.net>\n---\n\nRan a \"burn-in\" test by applying the \"make test\" patch in\n<http://marc.info/?l=git&m=119452148511531&w=2> for over an hour\nwith no test failures:\n\n$ set -e\n$ while /usr/bin/true; do (make t/t9119-git-svn-info.sh); done\n\nAlso ran \"make -C t full-svn-test\" to verify the fix.\n\n t/t9119-git-svn-info.sh |   35 ++++++++++++++++++++---------------\n 1 files changed, 20 insertions(+), 15 deletions(-)\n\ndiff --git a/t/t9119-git-svn-info.sh b/t/t9119-git-svn-info.sh\nindex cc61911..6d9bec9 100755\n--- a/t/t9119-git-svn-info.sh\n+++ b/t/t9119-git-svn-info.sh\n@@ -5,17 +5,22 @@\n test_description='git-svn info'\n \n . ./lib-git-svn.sh\n-say 'skipping svn-info test (has a race undiagnosed yet)'\n-test_done\n \n ptouch() {\n \tperl -w -e '\n \t\tuse strict;\n+\t\tuse POSIX qw(mktime);\n \t\tdie \"ptouch requires exactly 2 arguments\" if @ARGV != 2;\n-\t\tdie \"$ARGV[0] does not exist\" if ! -e $ARGV[0];\n-\t\tmy @s = stat $ARGV[0];\n-\t\tutime $s[8], $s[9], $ARGV[1];\n-\t' \"$1\" \"$2\"\n+\t\tmy $text_last_updated = shift @ARGV;\n+\t\tmy $git_file = shift @ARGV;\n+\t\tdie \"\\\"$git_file\\\" does not exist\" if ! -e $git_file;\n+\t\tif ($text_last_updated\n+\t\t    =~ /(\\d{4})-(\\d{2})-(\\d{2}) (\\d{2}):(\\d{2}):(\\d{2})/) {\n+\t\t\tmy $mtime = mktime($6, $5, $4, $3, $2 - 1, $1 - 1900);\n+\t\t\tmy $atime = $mtime;\n+\t\t\tutime $atime, $mtime, $git_file;\n+\t\t}\n+\t' \"`svn info $1 | grep '^Text Last Updated:'`\" \"$2\"\n }\n \n test_expect_success 'setup repository and import' \"\n@@ -111,7 +116,7 @@ test_expect_success 'info added-file' \"\n \t\tgit add added-file &&\n \tcd .. &&\n \tcp gitwc/added-file svnwc/added-file &&\n-\tptouch gitwc/added-file svnwc/added-file &&\n+\tptouch svnwc/added-file gitwc/added-file &&\n \tcd svnwc &&\n \t\tsvn add added-file > /dev/null &&\n \tcd .. &&\n@@ -127,7 +132,7 @@ test_expect_success 'info --url added-file' '\n \n test_expect_success 'info added-directory' \"\n \tmkdir gitwc/added-directory svnwc/added-directory &&\n-\tptouch gitwc/added-directory svnwc/added-directory &&\n+\tptouch svnwc/added-directory gitwc/added-directory &&\n \ttouch gitwc/added-directory/.placeholder &&\n \tcd svnwc &&\n \t\tsvn add added-directory > /dev/null &&\n@@ -156,7 +161,7 @@ test_expect_success 'info added-symlink-file' \"\n \t\tln -s added-file added-symlink-file &&\n \t\tsvn add added-symlink-file > /dev/null &&\n \tcd .. &&\n-\tptouch gitwc/added-symlink-file svnwc/added-symlink-file &&\n+\tptouch svnwc/added-symlink-file gitwc/added-symlink-file &&\n \t(cd svnwc; svn info added-symlink-file) \\\n \t\t> expected.info-added-symlink-file &&\n \t(cd gitwc; git-svn info added-symlink-file) \\\n@@ -179,7 +184,7 @@ test_expect_success 'info added-symlink-directory' \"\n \t\tln -s added-directory added-symlink-directory &&\n \t\tsvn add added-symlink-directory > /dev/null &&\n \tcd .. &&\n-\tptouch gitwc/added-symlink-directory svnwc/added-symlink-directory &&\n+\tptouch svnwc/added-symlink-directory gitwc/added-symlink-directory &&\n \t(cd svnwc; svn info added-symlink-directory) \\\n \t\t> expected.info-added-symlink-directory &&\n \t(cd gitwc; git-svn info added-symlink-directory) \\\n@@ -290,7 +295,7 @@ test_expect_success 'info --url symlink-directory (deleted)' '\n test_expect_success 'info unknown-file' \"\n \techo two > gitwc/unknown-file &&\n \tcp gitwc/unknown-file svnwc/unknown-file &&\n-\tptouch gitwc/unknown-file svnwc/unknown-file &&\n+\tptouch svnwc/unknown-file gitwc/unknown-file &&\n \t(cd svnwc; svn info unknown-file) 2> expected.info-unknown-file &&\n \t(cd gitwc; git-svn info unknown-file) 2> actual.info-unknown-file &&\n \tgit-diff expected.info-unknown-file actual.info-unknown-file\n@@ -304,7 +309,7 @@ test_expect_success 'info --url unknown-file' '\n \n test_expect_success 'info unknown-directory' \"\n \tmkdir gitwc/unknown-directory svnwc/unknown-directory &&\n-\tptouch gitwc/unknown-directory svnwc/unknown-directory &&\n+\tptouch svnwc/unknown-directory gitwc/unknown-directory &&\n \ttouch gitwc/unknown-directory/.placeholder &&\n \t(cd svnwc; svn info unknown-directory) \\\n \t\t2> expected.info-unknown-directory &&\n@@ -327,7 +332,7 @@ test_expect_success 'info unknown-symlink-file' \"\n \tcd svnwc &&\n \t\tln -s unknown-file unknown-symlink-file &&\n \tcd .. &&\n-\tptouch gitwc/unknown-symlink-file svnwc/unknown-symlink-file &&\n+\tptouch svnwc/unknown-symlink-file gitwc/unknown-symlink-file &&\n \t(cd svnwc; svn info unknown-symlink-file) \\\n \t\t2> expected.info-unknown-symlink-file &&\n \t(cd gitwc; git-svn info unknown-symlink-file) \\\n@@ -350,8 +355,8 @@ test_expect_success 'info unknown-symlink-directory' \"\n \tcd svnwc &&\n \t\tln -s unknown-directory unknown-symlink-directory &&\n \tcd .. &&\n-\tptouch gitwc/unknown-symlink-directory \\\n-\t       svnwc/unknown-symlink-directory &&\n+\tptouch svnwc/unknown-symlink-directory \\\n+\t       gitwc/unknown-symlink-directory &&\n \t(cd svnwc; svn info unknown-symlink-directory) \\\n \t\t2> expected.info-unknown-symlink-directory &&\n \t(cd gitwc; git-svn info unknown-symlink-directory) \\\n-- \n1.5.3.7\n"},{"id":"64281","messageId":"7vodc65whw.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"1199131665-1633-1-git-send-email-ddkilzer@kilzer.net","subject":"Re: [PATCH] Fix race condition in t9119-git-svn-info.sh","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-12-31T22:29:15Z","receivedAt":"2007-12-31T22:29:15Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"David D. Kilzer\" <ddkilzer@kilzer.net> writes:\n\n> Changed the ptouch bash function to use the \"Text Last Updated\"\n> date reported by 'svn info' when changing the modified time\n> (mtime) of the file/symlink/directory in the git working\n> directory.  Previously it used the mtime of the item in the\n> svn working directory, which caused the race condition.\n>\n> Signed-off-by: David D. Kilzer <ddkilzer@kilzer.net>\n\n> @@ -350,8 +355,8 @@ test_expect_success 'info unknown-symlink-directory' \"\n>  \tcd svnwc &&\n>  \t\tln -s unknown-directory unknown-symlink-directory &&\n>  \tcd .. &&\n> -\tptouch gitwc/unknown-symlink-directory \\\n> -\t       svnwc/unknown-symlink-directory &&\n> +\tptouch svnwc/unknown-symlink-directory \\\n> +\t       gitwc/unknown-symlink-directory &&\n\nHmph.  Am I the only one who finds this repetition somewhat\ndisturbing?\n"},{"id":"64285","messageId":"1199143999-6859-1-git-send-email-ddkilzer@kilzer.net","threadId":"10419","inReplyTo":"7vodc65whw.fsf@gitster.siamese.dyndns.org","subject":"[PATCH] Remove duplication in t9119-git-svn-info.sh","fromName":"David D. Kilzer","fromEmail":"ddkilzer@kilzer.net","sentAt":"2007-12-31T23:33:19Z","receivedAt":"2007-12-31T23:33:19Z","isPatch":true,"sender":{"key":"ddkilzer@kilzer.net","avatar":"https://avatars.githubusercontent.com/u/263571?v=4"},"body":"Simplify arguments to ptouch bash function.\n---\n t/t9119-git-svn-info.sh |   27 +++++++++++++--------------\n 1 files changed, 13 insertions(+), 14 deletions(-)\n\ndiff --git a/t/t9119-git-svn-info.sh b/t/t9119-git-svn-info.sh\nindex 6d9bec9..907058e 100755\n--- a/t/t9119-git-svn-info.sh\n+++ b/t/t9119-git-svn-info.sh\n@@ -20,7 +20,7 @@ ptouch() {\n \t\t\tmy $atime = $mtime;\n \t\t\tutime $atime, $mtime, $git_file;\n \t\t}\n-\t' \"`svn info $1 | grep '^Text Last Updated:'`\" \"$2\"\n+\t' \"`svn info svnwc/$1 | grep '^Text Last Updated:'`\" \"gitwc/$1\"\n }\n \n test_expect_success 'setup repository and import' \"\n@@ -40,10 +40,10 @@ test_expect_success 'setup repository and import' \"\n \t\tgit-svn fetch &&\n \tcd .. &&\n \tsvn co $svnrepo svnwc &&\n-\tptouch svnwc/file gitwc/file &&\n-\tptouch svnwc/directory gitwc/directory &&\n-\tptouch svnwc/symlink-file gitwc/symlink-file &&\n-\tptouch svnwc/symlink-directory gitwc/symlink-directory\n+\tptouch file &&\n+\tptouch directory &&\n+\tptouch symlink-file &&\n+\tptouch symlink-directory\n \t\"\n \n test_expect_success 'info' \"\n@@ -116,7 +116,7 @@ test_expect_success 'info added-file' \"\n \t\tgit add added-file &&\n \tcd .. &&\n \tcp gitwc/added-file svnwc/added-file &&\n-\tptouch svnwc/added-file gitwc/added-file &&\n+\tptouch added-file &&\n \tcd svnwc &&\n \t\tsvn add added-file > /dev/null &&\n \tcd .. &&\n@@ -132,7 +132,7 @@ test_expect_success 'info --url added-file' '\n \n test_expect_success 'info added-directory' \"\n \tmkdir gitwc/added-directory svnwc/added-directory &&\n-\tptouch svnwc/added-directory gitwc/added-directory &&\n+\tptouch added-directory &&\n \ttouch gitwc/added-directory/.placeholder &&\n \tcd svnwc &&\n \t\tsvn add added-directory > /dev/null &&\n@@ -161,7 +161,7 @@ test_expect_success 'info added-symlink-file' \"\n \t\tln -s added-file added-symlink-file &&\n \t\tsvn add added-symlink-file > /dev/null &&\n \tcd .. &&\n-\tptouch svnwc/added-symlink-file gitwc/added-symlink-file &&\n+\tptouch added-symlink-file &&\n \t(cd svnwc; svn info added-symlink-file) \\\n \t\t> expected.info-added-symlink-file &&\n \t(cd gitwc; git-svn info added-symlink-file) \\\n@@ -184,7 +184,7 @@ test_expect_success 'info added-symlink-directory' \"\n \t\tln -s added-directory added-symlink-directory &&\n \t\tsvn add added-symlink-directory > /dev/null &&\n \tcd .. &&\n-\tptouch svnwc/added-symlink-directory gitwc/added-symlink-directory &&\n+\tptouch added-symlink-directory &&\n \t(cd svnwc; svn info added-symlink-directory) \\\n \t\t> expected.info-added-symlink-directory &&\n \t(cd gitwc; git-svn info added-symlink-directory) \\\n@@ -295,7 +295,7 @@ test_expect_success 'info --url symlink-directory (deleted)' '\n test_expect_success 'info unknown-file' \"\n \techo two > gitwc/unknown-file &&\n \tcp gitwc/unknown-file svnwc/unknown-file &&\n-\tptouch svnwc/unknown-file gitwc/unknown-file &&\n+\tptouch unknown-file &&\n \t(cd svnwc; svn info unknown-file) 2> expected.info-unknown-file &&\n \t(cd gitwc; git-svn info unknown-file) 2> actual.info-unknown-file &&\n \tgit-diff expected.info-unknown-file actual.info-unknown-file\n@@ -309,7 +309,7 @@ test_expect_success 'info --url unknown-file' '\n \n test_expect_success 'info unknown-directory' \"\n \tmkdir gitwc/unknown-directory svnwc/unknown-directory &&\n-\tptouch svnwc/unknown-directory gitwc/unknown-directory &&\n+\tptouch unknown-directory &&\n \ttouch gitwc/unknown-directory/.placeholder &&\n \t(cd svnwc; svn info unknown-directory) \\\n \t\t2> expected.info-unknown-directory &&\n@@ -332,7 +332,7 @@ test_expect_success 'info unknown-symlink-file' \"\n \tcd svnwc &&\n \t\tln -s unknown-file unknown-symlink-file &&\n \tcd .. &&\n-\tptouch svnwc/unknown-symlink-file gitwc/unknown-symlink-file &&\n+\tptouch unknown-symlink-file &&\n \t(cd svnwc; svn info unknown-symlink-file) \\\n \t\t2> expected.info-unknown-symlink-file &&\n \t(cd gitwc; git-svn info unknown-symlink-file) \\\n@@ -355,8 +355,7 @@ test_expect_success 'info unknown-symlink-directory' \"\n \tcd svnwc &&\n \t\tln -s unknown-directory unknown-symlink-directory &&\n \tcd .. &&\n-\tptouch svnwc/unknown-symlink-directory \\\n-\t       gitwc/unknown-symlink-directory &&\n+\tptouch unknown-symlink-directory &&\n \t(cd svnwc; svn info unknown-symlink-directory) \\\n \t\t2> expected.info-unknown-symlink-directory &&\n \t(cd gitwc; git-svn info unknown-symlink-directory) \\\n-- \n1.5.3.7\n"},{"id":"64312","messageId":"20080102034317.GB11711@untitled","threadId":"10419","inReplyTo":"1199143999-6859-1-git-send-email-ddkilzer@kilzer.net","subject":"Re: [PATCH] Remove duplication in t9119-git-svn-info.sh","fromName":"Eric Wong","fromEmail":"normalperson@yhbt.net","sentAt":"2008-01-02T03:43:17Z","receivedAt":"2008-01-02T03:43:17Z","isPatch":true,"sender":{"key":"e@80x24.org","avatar":null},"body":"Junio C Hamano <gitster@pobox.com> wrote:\n> \"David D. Kilzer\" <ddkilzer@kilzer.net> writes:\n> \n> > @@ -350,8 +355,8 @@ test_expect_success 'info unknown-symlink-directory' \"\n> >  \tcd svnwc &&\n> >  \t\tln -s unknown-directory unknown-symlink-directory &&\n> >  \tcd .. &&\n> > -\tptouch gitwc/unknown-symlink-directory \\\n> > -\t       svnwc/unknown-symlink-directory &&\n> > +\tptouch svnwc/unknown-symlink-directory \\\n> > +\t       gitwc/unknown-symlink-directory &&\n> \n> Hmph.  Am I the only one who finds this repetition somewhat\n> disturbing?\n\n\"David D. Kilzer\" <ddkilzer@kilzer.net> wrote:\n> Simplify arguments to ptouch bash function.\n\nNot reading Junio's mind, I think he meant that you were swapping the\n\"gitwc/\" and \"svnwc/\" args everywhere in your changeset.\n\nNevertheless, does your change make things work with older\nversions of SVN?  I'm running 1.4.x everywhere these days, but\nI seem to recall the version of SVN on kernel.org was giving\nJunio trouble with the tests.\n\n-- \nEric Wong\n"},{"id":"64313","messageId":"526767.57295.qm@web52401.mail.re2.yahoo.com","threadId":"10419","inReplyTo":"20080102034317.GB11711@untitled","subject":"Re: [PATCH] Remove duplication in t9119-git-svn-info.sh","fromName":"David D. Kilzer","fromEmail":"ddkilzer@kilzer.net","sentAt":"2008-01-02T03:54:32Z","receivedAt":"2008-01-02T03:54:32Z","isPatch":true,"sender":{"key":"ddkilzer@kilzer.net","avatar":"https://avatars.githubusercontent.com/u/263571?v=4"},"body":"Eric Wong <normalperson@yhbt.net> wrote:\n\n> Not reading Junio's mind, I think he meant that you were swapping the\n> \"gitwc/\" and \"svnwc/\" args everywhere in your changeset.\n\nI did not switch them everywhere.  The original patch to fix the race condition\nrequired switching the arguments because I had to treat the svnwc path\ndifferently than the gitwc path.\n\n> Nevertheless, does your change make things work with older\n> versions of SVN?  I'm running 1.4.x everywhere these days, but\n> I seem to recall the version of SVN on kernel.org was giving\n> Junio trouble with the tests.\n\nWas it the \"race condition\" he was seeing, where the tests were failing because\nof a difference in one second between the svn output and the git output?  If\nso, that was fixed with the first patch.  I was able to reproduce the race\ncondition locally with svn-1.4.5 on my PowerBook G4.\n\nI don't have an easy way to test with svn-1.3.\n\nDave\n"},{"id":"64317","messageId":"7vabno3h3e.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"20080102034317.GB11711@untitled","subject":"Re: [PATCH] Remove duplication in t9119-git-svn-info.sh","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-02T05:57:09Z","receivedAt":"2008-01-02T05:57:09Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Eric Wong <normalperson@yhbt.net> writes:\n\n> Junio C Hamano <gitster@pobox.com> wrote:\n>> \"David D. Kilzer\" <ddkilzer@kilzer.net> writes:\n>> \n>> > @@ -350,8 +355,8 @@ test_expect_success 'info unknown-symlink-directory' \"\n>> >  \tcd svnwc &&\n>> >  \t\tln -s unknown-directory unknown-symlink-directory &&\n>> >  \tcd .. &&\n>> > -\tptouch gitwc/unknown-symlink-directory \\\n>> > -\t       svnwc/unknown-symlink-directory &&\n>> > +\tptouch svnwc/unknown-symlink-directory \\\n>> > +\t       gitwc/unknown-symlink-directory &&\n>> \n>> Hmph.  Am I the only one who finds this repetition somewhat\n>> disturbing?\n>\n> \"David D. Kilzer\" <ddkilzer@kilzer.net> wrote:\n>> Simplify arguments to ptouch bash function.\n>\n> Not reading Junio's mind, I think he meant that you were swapping the\n> \"gitwc/\" and \"svnwc/\" args everywhere in your changeset.\n\nYeah, that was what I meant.  ptouch routine's implementation\ncould have swapped the order of arguments internally.\n\nThe follow-up patch by David makes ptouch routine unusable if\nthe test suite becomes more elaborate and starts using more than\none git and svn work trees, but I do not think that is something\nwe have to worry about too much.\n"},{"id":"64329","messageId":"7vodc4y12r.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"20080102034317.GB11711@untitled","subject":"Re: [PATCH] Remove duplication in t9119-git-svn-info.sh","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-02T10:27:24Z","receivedAt":"2008-01-02T10:27:24Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Eric Wong <normalperson@yhbt.net> writes:\n\n> Nevertheless, does your change make things work with older\n> versions of SVN?  I'm running 1.4.x everywhere these days, but\n> I seem to recall the version of SVN on kernel.org was giving\n> Junio trouble with the tests.\n\nAhh, you are right.  Here is what I am getting.\n\n$ sh t9119-git-svn-info.sh -i -v\n* expecting success: \n\tmkdir info &&\n\tcd info &&\n\t\techo FIRST > A &&\n\t\techo one > file &&\n\t\tln -s file symlink-file &&\n\t\tmkdir directory &&\n\t\ttouch directory/.placeholder &&\n\t\tln -s directory symlink-directory &&\n\t\tsvn import -m 'initial' . file:///home/junio/git/t/trash/svnrepo &&\n\tcd .. &&\n\tmkdir gitwc &&\n\tcd gitwc &&\n\t\tgit-svn init file:///home/junio/git/t/trash/svnrepo &&\n\t\tgit-svn fetch &&\n\tcd .. &&\n\tsvn co file:///home/junio/git/t/trash/svnrepo svnwc &&\n\tptouch file &&\n\tptouch directory &&\n\tptouch symlink-file &&\n\tptouch symlink-directory\n\t\nAdding         file\nAdding         A\nAdding         symlink-file\nAdding         directory\nAdding         directory/.placeholder\nAdding         symlink-directory\n\nCommitted revision 1.\nInitialized empty Git repository in .git/\n\tA\tfile\n\tA\tA\n\tA\tsymlink-file\n\tA\tdirectory/.placeholder\n\tA\tsymlink-directory\nr1 = 153bc4aeb5ed1375deb17b3611c1d2177ff2e5a4 (git-svn)\nChecked out HEAD:\n  file:///home/junio/git/t/trash/svnrepo r1\nA    svnwc/file\nA    svnwc/A\nA    svnwc/symlink-file\nA    svnwc/directory\nA    svnwc/directory/.placeholder\nA    svnwc/symlink-directory\nChecked out revision 1.\n*   ok 1: setup repository and import\n\n* expecting success: \n\t(cd svnwc; svn info) > expected.info &&\n\t(cd gitwc; git-svn info) > actual.info &&\n\tgit-diff expected.info actual.info\n\t\n*   ok 2: info\n\n* expecting success: \n\ttest $(cd gitwc; git-svn info --url) = $svnrepo\n\t\n*   ok 3: info --url\n\n* expecting success: \n\t(cd svnwc; svn info .) > expected.info-dot &&\n\t(cd gitwc; git-svn info .) > actual.info-dot &&\n\tgit-diff expected.info-dot actual.info-dot\n\t\n*   ok 4: info .\n\n* expecting success: \n\ttest $(cd gitwc; git-svn info --url .) = $svnrepo\n\t\n*   ok 5: info --url .\n\n* expecting success: \n\t(cd svnwc; svn info file) > expected.info-file &&\n\t(cd gitwc; git-svn info file) > actual.info-file &&\n\tgit-diff expected.info-file actual.info-file\n\t\ndiff --git a/expected.info-file b/actual.info-file\nindex 23b45e2..e7f3924 100644\n--- a/expected.info-file\n+++ b/actual.info-file\n@@ -10,6 +10,5 @@ Last Changed Author: junio\n Last Changed Rev: 1\n Last Changed Date: 2008-01-02 10:25:19 +0000 (Wed, 02 Jan 2008)\n Text Last Updated: 2008-01-02 10:25:20 +0000 (Wed, 02 Jan 2008)\n-Properties Last Updated: 2008-01-02 10:25:20 +0000 (Wed, 02 Jan 2008)\n Checksum: 5bbf5a52328e7439ae6e719dfe712200\n \n* FAIL 6: info file\n\t\n\t\t(cd svnwc; svn info file) > expected.info-file &&\n\t\t(cd gitwc; git-svn info file) > actual.info-file &&\n\t\tgit-diff expected.info-file actual.info-file\n\t\t\n"},{"id":"64523","messageId":"7v63y8ble8.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7vfxxtu5ov.fsf@gitster.siamese.dyndns.org","subject":"What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-05T10:46:07Z","receivedAt":"2008-01-05T10:46:07Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"We are not at -rc3 yet, but we will be soon.  What we have\naccumulated in 'master' are mostly fixes, and the official\ngit-gui 0.9.1 is also included tonight.\n\nI have to apologize that tonight I got a bit carried away\nenjoying arguing for the sake of arguing.  Some patches that\nmight be worthy even though they are late in the cycle are not\nin tonight's 'master', mostly because I have to sleep on them,\nand partly because I am running out of time tonight.\n\n * Tsugikazu Shibata's git-diff hunk header change.\n\n   I have a counterproposal that I think is more in line with\n   the other parts of the system.  As the kernel project has\n   ja_JP, ko_KR and zh_CN directories under Documentation these\n   days, the issue this patch addresses is already real, and we\n   would want to have a solution in 1.5.4, even though the topic\n   was raised too late in the cycle.  I think my first two\n   patches could be a good starting point for that.  I'd exclude\n   the last patch in the series that acts on gitattributes for\n   now.\n\n * Marco's git-stash changes to output to stdout.\n\n   I'd probably apply this, with a slightly toned down commit\n   log message.  Marco says some practice is standard, I\n   disagreed, but that is not a reason to say \"this practice is\n   nonstandard and bad\".  Simply saying \"some do this and it is\n   better to be helpful to them because there is no strong\n   reason not to\" would be good enough.\n\n * Jeff's git-add--interactive change to always honor color.diff\n   regardless of color.interactive.\n\n   I'd probably apply this, along with the patch to redefine\n   what color.interactive means.  \"git am -i\" could also learn\n   to use colors in the future.\n\n   Incidentally I noticed that many of the color.diff.* palette\n   options are read by \"git-add -i\" but never used by the\n   script.  We might want to fix this while we are at it.\n\n * Dan McGee's workaround to breakage caused by changes in\n   AsciiDoc 8.2.3.\n\n   I have to do my usual \"before-and-after comparison\" with\n   copies of AsciiDoc versions that should not be affected by\n   the breakage, which I did not have time to do so far.  But\n   this is probably a must-have before the release.\n\n * My patch to error out \"git stash clear foobar\".\n\n   This should be applied; it is a good safety measure\n   regardless of where that \"git stash drop\" thing would go.\n\nAn issue worth addressing before the release is still in limbo.\n\n * Dmitry's git-filter-branch fix to disambiguate the refs being\n   rewritten.\n\n   Addition of \"git-rev-parse --symbolic-full\" may solve this\n   more cleanly than the patches in the discussion, but we\n   haven't reached the conclusion of this thread yet.\n\nAnything I missed?\n\n----------------------------------------------------------------\n\n* The 'master' branch has these since the last announcement.\n\nAlex Riesen (1):\n  Allow selection of different cleanup modes for commit messages\n\nArjen Laarhoven (1):\n  Fix \"git log --diff-filter\" bug\n\nBernt Hansen (1):\n  git-gui: Make commit log messages end with a newline\n\nEric Wong (2):\n  git-svn: allow dcommit --no-rebase to commit multiple, dependent changes\n  git-svn: unlink index files that were globbed, too\n\nGrégoire Barbier (1):\n  Fix double-free() in http-push.c:remote_exists()\n\nGustaf Hendeby (2):\n  shortlog manpage documentation: work around asciidoc markup issues\n  Documentation/user-manual.txt: fix typo\n\nJ. Bruce Fields (1):\n  Documentation: fix remote.<name>.skipDefaultUpdate description\n\nJeff King (6):\n  cvsimport: die on cvsps errors\n  config: handle lack of newline at end of file better\n  git-reset: refuse to do hard reset in a bare repository\n  add a \"basic\" diff config callback\n  diff: load funcname patterns in \"basic\" config\n  diff: remove lazy config loading\n\nJim Meyering (2):\n  Fix grammar nits in documentation and in code comments.\n  Don't access line[-1] for a zero-length \"line\" from fgets.\n\nJohannes Schindelin (1):\n  Optimize prefixcmp()\n\nJohannes Sixt (1):\n  git-gui: Move frequently used commands to the top of the context menu.\n\nJunio C Hamano (20):\n  t7005: do not exit inside test.\n  builtin-commit: fix amending of the initial commit\n  builtin-commit: avoid double-negation in the code.\n  Fix documentation of --first-parent in git-log and copy it to\n    git-rev-list\n  combine-diff: Fix path quoting\n  Fix rewrite_diff() name quoting.\n  contrib: resurrect scripted git-revert.\n  GIT 1.5.4-rc2\n  Documentation/git-submodule.txt: typofix\n  \"git pull --tags\": error out with a better message.\n  git-rebase -i behaves better on commits with incomplete messages\n  git-rebase -i: clean-up error check codepath.\n  lock_any_ref_for_update(): reject wildcard return from check_ref_format\n  Update callers of check_ref_format()\n  Uninline prefixcmp()\n  git-clean: make \"Would remove ...\" path relative to cwd again\n  t/t7600: avoid GNUism in grep\n  t/t{3600,3800,5401}: do not use egrep when grep would do\n  t/t3800: do not use a temporary file to hold expected result.\n  Update draft release notes for 1.5.4\n\nMarco Costalba (1):\n  Document git-reset defaults to HEAD if no commit is given\n\nMark Levedahl (1):\n  git-gui: Unconditionally use absolute paths with Cygwin\n\nMartin Koegler (2):\n  receive-pack: check object type of sha1 before using them as commits\n  receive-pack: reject invalid refnames\n\nMichael Stefaniuc (1):\n  git-am: Run git gc only once and not for every patch.\n\nMiklos Vajna (2):\n  git-sh-setup: document git_editor() and get_author_ident_from_commit()\n  t/t7001: avoid unnecessary ERE when using grep\n\nPeter Karlsson (1):\n  Added Swedish translation.\n\nRené Scharfe (1):\n  Make \"--pretty=format\" parser a bit more careful.\n\nShawn O. Pearce (2):\n  git-gui: Handle file mode changes (644->755) in diff viewer\n  Improve error messages when int/long cannot be parsed from config\n"},{"id":"64545","messageId":"449c10960801051321g785e45e3v8f7b129bb087e1ca@mail.gmail.com","threadId":"10419","inReplyTo":"7v63y8ble8.fsf@gitster.siamese.dyndns.org","subject":"Re: What's in git.git (stable frozen)","fromName":"Dan McGee","fromEmail":"dpmcgee@gmail.com","sentAt":"2008-01-05T21:21:50Z","receivedAt":"2008-01-05T21:21:50Z","isPatch":false,"sender":{"key":"dpmcgee@gmail.com","avatar":"https://avatars.githubusercontent.com/u/265817?v=4"},"body":"On Jan 5, 2008 4:46 AM, Junio C Hamano <gitster@pobox.com> wrote:\n> We are not at -rc3 yet, but we will be soon.  What we have\n> accumulated in 'master' are mostly fixes, and the official\n> git-gui 0.9.1 is also included tonight.\n>  * Dan McGee's workaround to breakage caused by changes in\n>    AsciiDoc 8.2.3.\n>\n>    I have to do my usual \"before-and-after comparison\" with\n>    copies of AsciiDoc versions that should not be affected by\n>    the breakage, which I did not have time to do so far.  But\n>    this is probably a must-have before the release.\n\nI've updated the patch a bit as I noticed I completely missed the\nuser-manual.txt and a handful of other files that weren't named\ngit-*.txt. The new version is attached (gzipped). I also included\ninstructions on how to regenerate it in the commit message, which may\nbe a wise idea to ensure no Documentation changes add a gitlink: call\nbetween now and when you apply the patch.\n\n-Dan\n"},{"id":"64546","messageId":"7vwsqn7wip.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"e5bfff550801050507x369976b7sd5e112451bc90331@mail.gmail.com","subject":"Re: What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-05T22:11:42Z","receivedAt":"2008-01-05T22:11:42Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Marco Costalba\" <mcostalba@gmail.com> writes:\n\n> I understand the patch series is too intrusive now, but if you want I\n> can send a simplified one that just fixes the off by one bug for now.\n\nHow about the one that fixes first and see how bad the remainder\nlooks again?  I recall that Réne were not entirely unhappy with\nhis last round.  And I do not think that change does not have to\nbe \"a series\" but can be a single change.  At least it did not\nlook so complicated, but I may be misremembering it.\n"},{"id":"64566","messageId":"7v4pdr7jco.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"449c10960801051321g785e45e3v8f7b129bb087e1ca@mail.gmail.com","subject":"Re: What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-06T02:56:07Z","receivedAt":"2008-01-06T02:56:07Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Dan McGee\" <dpmcgee@gmail.com> writes:\n\n> On Jan 5, 2008 4:46 AM, Junio C Hamano <gitster@pobox.com> wrote:\n>> We are not at -rc3 yet, but we will be soon.  What we have\n>> accumulated in 'master' are mostly fixes, and the official\n>> git-gui 0.9.1 is also included tonight.\n>>  * Dan McGee's workaround to breakage caused by changes in\n>>    AsciiDoc 8.2.3.\n>>\n>>    I have to do my usual \"before-and-after comparison\" with\n>>    copies of AsciiDoc versions that should not be affected by\n>>    the breakage, which I did not have time to do so far.  But\n>>    this is probably a must-have before the release.\n>\n> I've updated the patch a bit as I noticed I completely missed the\n> user-manual.txt and a handful of other files that weren't named\n> git-*.txt. The new version is attached (gzipped).\n\nThe asciidoc.conf change I resurrected from the earlier one but\nit appears this breaks build with asciidoc 7.1.2 for some reason\n(I haven't looked into that myself yet, and I won't be for the\nnext 12 hours or so).\n"},{"id":"64567","messageId":"7vy7b364aw.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7v4pdr7jco.fsf@gitster.siamese.dyndns.org","subject":"Re: What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-06T03:06:31Z","receivedAt":"2008-01-06T03:06:31Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Junio C Hamano <gitster@pobox.com> writes:\n\n>> I've updated the patch a bit as I noticed I completely missed the\n>> user-manual.txt and a handful of other files that weren't named\n>> git-*.txt. The new version is attached (gzipped).\n>\n> The asciidoc.conf change I resurrected from the earlier one but\n> it appears this breaks build with asciidoc 7.1.2 for some reason\n> (I haven't looked into that myself yet, and I won't be for the\n> next 12 hours or so).\n\nAh, I spoke too fast.  I think I need to first do a clean-up\npatch to fix \"gitlink::foobar[1]\" that should have been spelled\nas \"gitlink:foobar[1]\" in a few places, and your change is good.\n"},{"id":"64568","messageId":"449c10960801051908u38e87574i59ec314c3ddc775c@mail.gmail.com","threadId":"10419","inReplyTo":"7vy7b364aw.fsf@gitster.siamese.dyndns.org","subject":"Re: What's in git.git (stable frozen)","fromName":"Dan McGee","fromEmail":"dpmcgee@gmail.com","sentAt":"2008-01-06T03:08:19Z","receivedAt":"2008-01-06T03:08:19Z","isPatch":false,"sender":{"key":"dpmcgee@gmail.com","avatar":"https://avatars.githubusercontent.com/u/265817?v=4"},"body":"On Jan 5, 2008 9:06 PM, Junio C Hamano <gitster@pobox.com> wrote:\n> Junio C Hamano <gitster@pobox.com> writes:\n>\n> >> I've updated the patch a bit as I noticed I completely missed the\n> >> user-manual.txt and a handful of other files that weren't named\n> >> git-*.txt. The new version is attached (gzipped).\n> >\n> > The asciidoc.conf change I resurrected from the earlier one but\n> > it appears this breaks build with asciidoc 7.1.2 for some reason\n> > (I haven't looked into that myself yet, and I won't be for the\n> > next 12 hours or so).\n>\n> Ah, I spoke too fast.  I think I need to first do a clean-up\n> patch to fix \"gitlink::foobar[1]\" that should have been spelled\n> as \"gitlink:foobar[1]\" in a few places, and your change is good.\n\nIt looks like I still blew it and forgot the changes in asciidoc.conf\nin the second patch, sorry about that. Let me know if you need\nanything more, although this patch is pretty straightforward (once I\nspent 3 hours trying to figure out why it was broken in the first\nplace and attempting to find a more sane way around it).\n\n-Dan\n"},{"id":"64571","messageId":"20080106042409.GA4843@coredump.intra.peff.net","threadId":"10419","inReplyTo":"7v63y8ble8.fsf@gitster.siamese.dyndns.org","subject":"Re: What's in git.git (stable frozen)","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2008-01-06T04:24:09Z","receivedAt":"2008-01-06T04:24:09Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Sat, Jan 05, 2008 at 02:46:07AM -0800, Junio C Hamano wrote:\n\n>  * Jeff's git-add--interactive change to always honor color.diff\n>    regardless of color.interactive.\n> \n>    I'd probably apply this, along with the patch to redefine\n>    what color.interactive means.  \"git am -i\" could also learn\n>    to use colors in the future.\n> \n>    Incidentally I noticed that many of the color.diff.* palette\n>    options are read by \"git-add -i\" but never used by the\n>    script.  We might want to fix this while we are at it.\n\nHere is the palette cleanup patch, on top of my others (it should still\nbe done even if the other patches aren't taken, but backporting it\nshould be fairly obvious).\n\n-- >8 --\nadd--interactive: remove unused diff colors\n\nWhen color support was added, we colored the diffs\nourselves. However, 4af756f3 changed this to simply run\n\"git diff-files\" twice, keeping the colored output\nseparately.\n\nThis makes the internal diff color variables obsolete with\none exception: when splitting hunks, we have to manually\nrecreate the fragment for each part of the split. Thus we\nkeep $fraginfo_color around to do that correctly.\n\nSigned-off-by: Jeff King <peff@peff.net>\n---\n git-add--interactive.perl |    6 +-----\n 1 files changed, 1 insertions(+), 5 deletions(-)\n\ndiff --git a/git-add--interactive.perl b/git-add--interactive.perl\nindex aaa9b24..5bdcca8 100755\n--- a/git-add--interactive.perl\n+++ b/git-add--interactive.perl\n@@ -6,7 +6,7 @@ use Git;\n # Prompt colors:\n my ($prompt_color, $header_color, $help_color, $normal_color);\n # Diff colors:\n-my ($new_color, $old_color, $fraginfo_color, $metainfo_color, $whitespace_color);\n+my ($fraginfo_color);\n \n my ($use_color, $diff_use_color);\n my $repo = Git->repository();\n@@ -27,11 +27,7 @@ if ($use_color) {\n # Do we also set diff colors?\n $diff_use_color = $repo->get_colorbool('color.diff');\n if ($diff_use_color) {\n-\t$new_color = $repo->get_color(\"color.diff.new\", \"green\");\n-\t$old_color = $repo->get_color(\"color.diff.old\", \"red\");\n \t$fraginfo_color = $repo->get_color(\"color.diff.frag\", \"cyan\");\n-\t$metainfo_color = $repo->get_color(\"color.diff.meta\", \"bold\");\n-\t$whitespace_color = $repo->get_color(\"color.diff.whitespace\", \"normal red\");\n }\n \n sub colored {\n-- \n1.5.4.rc2.1147.gaecdf-dirty\n"},{"id":"64572","messageId":"20080106042935.GB4843@coredump.intra.peff.net","threadId":"10419","inReplyTo":"20080106042409.GA4843@coredump.intra.peff.net","subject":"Re: What's in git.git (stable frozen)","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2008-01-06T04:29:35Z","receivedAt":"2008-01-06T04:29:35Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Sat, Jan 05, 2008 at 11:24:09PM -0500, Jeff King wrote:\n\n> >  * Jeff's git-add--interactive change to always honor color.diff\n> >    regardless of color.interactive.\n> > \n> >    I'd probably apply this, along with the patch to redefine\n> >    what color.interactive means.  \"git am -i\" could also learn\n> >    to use colors in the future.\n> \n> Here is the palette cleanup patch, on top of my others (it should still\n\nAnd while tracking down the $fraginfo usage, I noticed that my original\npatches introduce a bug. Fix is below (it is on top of palette cleanup).\n\nI can also resubmit these in a more sensible order (palette cleanup,\nthen the other three squashed together) if you prefer.\n\n-- >8 --\nadd--interactive: colorize split hunk fragment headers\n\nThe only diff element which we still color in perl is the\n\"fraginfo\" for the split hunks. When honoring color.diff\nwithout color.interactive, we were failing to actually color\nthis because the \"colored\" function checks for interactive\ncolor. Instead, let's just color it by hand (the simple\napproach is OK because we know we have a single line\nstring).\n\nSigned-off-by: Jeff King <peff@peff.net>\n---\nThis is a little uglier than it could be because the \"colored\" function\ndoes two things: correctly colorize a string, and check the global\n$use_color. We could do something like:\n\n  local $use_color = 1;\n  $display_head = colored($fraginfo_color, $head);\n\nwhich is arguably less ugly. Or we could refactor \"colored\", which is a\nlarger change.\n\n git-add--interactive.perl |    5 +++--\n 1 files changed, 3 insertions(+), 2 deletions(-)\n\ndiff --git a/git-add--interactive.perl b/git-add--interactive.perl\nindex 5bdcca8..76dc4e6 100755\n--- a/git-add--interactive.perl\n+++ b/git-add--interactive.perl\n@@ -21,8 +21,8 @@ if ($use_color) {\n \t$prompt_color = $repo->get_color(\"color.interactive.prompt\", \"bold blue\");\n \t$header_color = $repo->get_color(\"color.interactive.header\", \"bold\");\n \t$help_color = $repo->get_color(\"color.interactive.help\", \"red bold\");\n-\t$normal_color = $repo->get_color(\"\", \"reset\");\n }\n+$normal_color = $repo->get_color(\"\", \"reset\");\n \n # Do we also set diff colors?\n $diff_use_color = $repo->get_colorbool('color.diff');\n@@ -648,7 +648,8 @@ sub split_hunk {\n \t\tmy $display_head = $head;\n \t\tunshift @{$hunk->{TEXT}}, $head;\n \t\tif ($diff_use_color) {\n-\t\t\t$display_head = colored($fraginfo_color, $head);\n+\t\t\t$display_head = join('', $fraginfo_color, $head,\n+\t\t\t\t$normal_color, \"\\n\");\n \t\t}\n \t\tunshift @{$hunk->{DISPLAY}}, $display_head;\n \t}\n-- \n1.5.4.rc2.1147.gaecdf-dirty\n"},{"id":"64583","messageId":"7vir275jmr.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"449c10960801051908u38e87574i59ec314c3ddc775c@mail.gmail.com","subject":"Re: What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-06T10:33:00Z","receivedAt":"2008-01-06T10:33:00Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Dan McGee\" <dpmcgee@gmail.com> writes:\n\n>> Ah, I spoke too fast.  I think I need to first do a clean-up\n>> patch to fix \"gitlink::foobar[1]\" that should have been spelled\n>> as \"gitlink:foobar[1]\" in a few places, and your change is good.\n>\n> It looks like I still blew it and forgot the changes in asciidoc.conf\n> in the second patch, sorry about that. Let me know if you need\n> anything more,...\n\nI think I got all of what you wanted to do now, although my tree\nstill is not in a shape I can push it out yet (I have to whip\nother parts that does not have anything to do with this\ndocumentation fix into shape first).\n\nThanks.\n"},{"id":"64584","messageId":"7vejcv5is3.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"20080106042935.GB4843@coredump.intra.peff.net","subject":"Re: What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-06T10:51:24Z","receivedAt":"2008-01-06T10:51:24Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff King <peff@peff.net> writes:\n\n> This is a little uglier than it could be because the \"colored\" function\n> does two things: correctly colorize a string, and check the global\n> $use_color.\n\nThat fallout is a logical consequence of the semantics change of\ncolor.interactive, which used to color the whole user experience\nbut now only covers about menus and stuff.  $use_color is still\ntied to the former semantics.\n\nIt may make more sense to:\n\n * unset $prompt_color and friends when color.interactive says\n   \"not to color the menus\";\n\n * unset $fraginfo_color and diff related ones when color.diff\n   says \"diff is monochrome\";\n\nupfront, and then change \"sub colored\" to just check if $color\nis unset, instead of checking $use_color.\n"},{"id":"64589","messageId":"20080106111725.GA11603@coredump.intra.peff.net","threadId":"10419","inReplyTo":"7vejcv5is3.fsf@gitster.siamese.dyndns.org","subject":"Re: What's in git.git (stable frozen)","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2008-01-06T11:17:26Z","receivedAt":"2008-01-06T11:17:26Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Sun, Jan 06, 2008 at 02:51:24AM -0800, Junio C Hamano wrote:\n\n> It may make more sense to:\n> \n>  * unset $prompt_color and friends when color.interactive says\n>    \"not to color the menus\";\n> \n>  * unset $fraginfo_color and diff related ones when color.diff\n>    says \"diff is monochrome\";\n> \n> upfront, and then change \"sub colored\" to just check if $color\n> is unset, instead of checking $use_color.\n\nSomething like this (instead of my last patch):\n\n-- >8 --\nadd--interactive: fix \"colored\" function semantics\n\nSince color.interactive is just for the menus, the \"colored\"\nfunction can't use it to determine whether to show colors\n(this was visible as a bug in which the headers of split\nhunks were not colored if color.diff was set but\ncolor.interactive was not).\n\nThe new semantics are:\n\n  - colors which are unused are set to undef; the \"colored\"\n    function knows not to do anything with them\n\n  - menu colors are set only when color.interactive is true\n\n  - diff colors are set only when color.diff is true\n\nSigned-off-by: Jeff King <peff@peff.net>\n---\n git-add--interactive.perl |   39 +++++++++++++++------------------------\n 1 files changed, 15 insertions(+), 24 deletions(-)\n\ndiff --git a/git-add--interactive.perl b/git-add--interactive.perl\nindex 5bdcca8..17ca5b8 100755\n--- a/git-add--interactive.perl\n+++ b/git-add--interactive.perl\n@@ -3,38 +3,29 @@\n use strict;\n use Git;\n \n-# Prompt colors:\n-my ($prompt_color, $header_color, $help_color, $normal_color);\n-# Diff colors:\n-my ($fraginfo_color);\n-\n-my ($use_color, $diff_use_color);\n my $repo = Git->repository();\n \n-$use_color = $repo->get_colorbool('color.interactive');\n-\n-if ($use_color) {\n-\t# Set interactive colors:\n+my $menu_use_color = $repo->get_colorbool('color.interactive');\n+my ($prompt_color, $header_color, $help_color) =\n+\t$menu_use_color ? (\n+\t\t$repo->get_color('color.interactive.prompt', 'bold blue'),\n+\t\t$repo->get_color('color.interactive.header', 'bold'),\n+\t\t$repo->get_color('color.interactive.help', 'red bold'),\n+\t) : ();\n \n-\t# Grab the 3 main colors in git color string format, with sane\n-\t# (visible) defaults:\n-\t$prompt_color = $repo->get_color(\"color.interactive.prompt\", \"bold blue\");\n-\t$header_color = $repo->get_color(\"color.interactive.header\", \"bold\");\n-\t$help_color = $repo->get_color(\"color.interactive.help\", \"red bold\");\n-\t$normal_color = $repo->get_color(\"\", \"reset\");\n-}\n+my $diff_use_color = $repo->get_colorbool('color.diff');\n+my ($fraginfo_color) =\n+\t$diff_use_color ? (\n+\t\t$repo->get_color('color.diff.frag', 'cyan'),\n+\t) : ();\n \n-# Do we also set diff colors?\n-$diff_use_color = $repo->get_colorbool('color.diff');\n-if ($diff_use_color) {\n-\t$fraginfo_color = $repo->get_color(\"color.diff.frag\", \"cyan\");\n-}\n+my $normal_color = $repo->get_color(\"\", \"reset\");\n \n sub colored {\n \tmy $color = shift;\n \tmy $string = join(\"\", @_);\n \n-\tif ($use_color) {\n+\tif (defined $color) {\n \t\t# Put a color code at the beginning of each line, a reset at the end\n \t\t# color after newlines that are not at the end of the string\n \t\t$string =~ s/(\\n+)(.)/$1$color$2/g;\n@@ -300,7 +291,7 @@ sub highlight_prefix {\n \t\treturn \"$prefix$remainder\";\n \t}\n \n-\tif (!$use_color) {\n+\tif (!$menu_use_color) {\n \t\treturn \"[$prefix]$remainder\";\n \t}\n \n-- \n1.5.4.rc2.1148.gf9fe3-dirty\n"},{"id":"64591","messageId":"7vy7b33zjk.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"20080106111725.GA11603@coredump.intra.peff.net","subject":"Re: What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-06T12:32:15Z","receivedAt":"2008-01-06T12:32:15Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff King <peff@peff.net> writes:\n\n> Something like this (instead of my last patch):\n\nYeah, I like that much better, especially the renaming of\n$use_color to more descriptive (but is it really about \"menu\", I\nwonder?).\n\nI might consider rewriting this part\n\n> +my $menu_use_color = $repo->get_colorbool('color.interactive');\n> +my ($prompt_color, $header_color, $help_color) =\n> +\t$menu_use_color ? (\n> +\t\t$repo->get_color('color.interactive.prompt', 'bold blue'),\n> +\t\t$repo->get_color('color.interactive.header', 'bold'),\n> +\t\t$repo->get_color('color.interactive.help', 'red bold'),\n> +\t) : ();\n\nlike this:\n\n\tmy ($prompt_color, $header_color, $help_color, $fraginfo_color);\n        if ($colored_prompt) {\n        \t$prompt_color = ...;\n                $header_color = ...;\n        }\n\tif ($colored_diff) {\n        \t$fraginfo_color = ...;\n\t}\n\nor even like this:\n\n\tmy (%palette);\n        if ($colored_prompt) {\n\t\tmy %default = (\n                \tprompt => 'bold blue',\n                        header => 'bold',\n                        ...\n\t\t);\n                while (my ($k,$v) = each %default) {\n                    $palette{$k} = $repo->get_color(\"color.interactive.$k\",$v);\n\t\t}\n\t}\n\nBut I realize that's going overboard.  Certainly the last one is\ndoing unnecessary generalization for generalization's sake.\n"},{"id":"64604","messageId":"20080106205946.GA17482@coredump.intra.peff.net","threadId":"10419","inReplyTo":"7vy7b33zjk.fsf@gitster.siamese.dyndns.org","subject":"Re: What's in git.git (stable frozen)","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2008-01-06T20:59:46Z","receivedAt":"2008-01-06T20:59:46Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Sun, Jan 06, 2008 at 04:32:15AM -0800, Junio C Hamano wrote:\n\n> Yeah, I like that much better, especially the renaming of\n> $use_color to more descriptive (but is it really about \"menu\", I\n> wonder?).\n\nI thought that, too, but I didn't know what better word to use\n(something like \"display\" doesn't make it clear that it doesn't involve\nthe diff).\n\n> I might consider rewriting this part\n> \n> > +my $menu_use_color = $repo->get_colorbool('color.interactive');\n> > +my ($prompt_color, $header_color, $help_color) =\n> > +\t$menu_use_color ? (\n> > +\t\t$repo->get_color('color.interactive.prompt', 'bold blue'),\n> > +\t\t$repo->get_color('color.interactive.header', 'bold'),\n> > +\t\t$repo->get_color('color.interactive.help', 'red bold'),\n> > +\t) : ();\n> \n> like this:\n> \n> \tmy ($prompt_color, $header_color, $help_color, $fraginfo_color);\n>         if ($colored_prompt) {\n>         \t$prompt_color = ...;\n>                 $header_color = ...;\n>         }\n> \tif ($colored_diff) {\n>         \t$fraginfo_color = ...;\n> \t}\n\nActually, that's more or less how it's written before my patch (in fact,\nyou could eliminate that part of my patch and just move $normal_color\noutside of the conditional). However I didn't like having the\ndeclaration and the assignment so far apart (and duplicated). But I will\nadmit my version is a little nested. Please feel free to switch it when\nyou apply.\n\n> or even like this:\n> \n> \tmy (%palette);\n>         if ($colored_prompt) {\n> \t\tmy %default = (\n>                 \tprompt => 'bold blue',\n>                         header => 'bold',\n>                         ...\n> \t\t);\n>                 while (my ($k,$v) = each %default) {\n>                     $palette{$k} = $repo->get_color(\"color.interactive.$k\",$v);\n> \t\t}\n> \t}\n> \n> But I realize that's going overboard.  Certainly the last one is\n> doing unnecessary generalization for generalization's sake.\n\nYes, I considered making a %palette, as well, but it just seemed a\nlittle gratuitous (and the nice thing about using variables is that they\ncatch typos better).\n\n-Peff\n"},{"id":"64606","messageId":"7vlk724pji.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"20080106205946.GA17482@coredump.intra.peff.net","subject":"Re: What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-06T21:22:57Z","receivedAt":"2008-01-06T21:22:57Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff King <peff@peff.net> writes:\n\n> Yes, I considered making a %palette, as well, but it just seemed a\n> little gratuitous (and the nice thing about using variables is that they\n> catch typos better).\n\nYes, to a certain extent with Perl (I think if you make the same\ntypo twice you won't get much help, and that is quite easy to\ntrigger with variable name autocompletion and cut-and-paste).\n\nI suspect \"if (!$menu_use_color)\" might need to be refined in\nsub \"highlight_prefix\".  It should be tied with $prompt_color\nsomehow (i.e. either it is undef or the \"plain\" color),\nshouldn't it?\n\nBut other than that the result looks quite nice.  I shuffled the\npatches around and the resulting series consists of three patches:\n\n - \"remove unused diff colors\";\n\n - \"color.diff\" colors diff, \"color.interactive\" colors\n   interaction (squashed the original with change to the \"sub\n   colored\" to use palette setting instead of $use_color as the\n   cue);\n\n - documentation update to redefine the color.interactive\n   semantics;\n"},{"id":"64611","messageId":"20080107014830.GB17748@coredump.intra.peff.net","threadId":"10419","inReplyTo":"7vlk724pji.fsf@gitster.siamese.dyndns.org","subject":"Re: What's in git.git (stable frozen)","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2008-01-07T01:48:30Z","receivedAt":"2008-01-07T01:48:30Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Sun, Jan 06, 2008 at 01:22:57PM -0800, Junio C Hamano wrote:\n\n> Yes, to a certain extent with Perl (I think if you make the same\n> typo twice you won't get much help, and that is quite easy to\n> trigger with variable name autocompletion and cut-and-paste).\n\nYes, and a static checking language would be a little less error-prone.\nBut who can live without \"eval <STDIN>\"? :)\n\n> I suspect \"if (!$menu_use_color)\" might need to be refined in\n> sub \"highlight_prefix\".  It should be tied with $prompt_color\n> somehow (i.e. either it is undef or the \"plain\" color),\n> shouldn't it?\n\nI'm not sure. It avoids printing the brackets in \"[p]atch\". If you say\n\"use color, but make the color plain\" does that mean you want brackets\nor not (right now it will not show brackets)?\n\n> But other than that the result looks quite nice.  I shuffled the\n> patches around and the resulting series consists of three patches:\n\nGreat. That is the order I would have chosen as well (and hopefully I\ngave you enough material in the commit messages to cut and paste\nsomething sensible).\n\n-Peff\n"},{"id":"64630","messageId":"7vhchq11n2.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"7v63y8ble8.fsf@gitster.siamese.dyndns.org","subject":"Re: What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-07T08:27:29Z","receivedAt":"2008-01-07T08:27:29Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"I've applied all the leftover bits I mentioned in yesterday's\nmessage and 'master' tonight is pretty much where I want it to\nbe in 1.5.4-rc3 (and in 1.5.4 final).\n\nSubsystem people (except Shawn, whose git-gui 0.9.1 is already\nin) are requested to tell me to pull from them, if they have\naccumulated changes that should be in the final release.  I am\nhoping that I can tag -rc3 in a few days (say by the end of my\nWednesday).\n"},{"id":"64678","messageId":"18306.41093.376963.228802@cargo.ozlabs.ibm.com","threadId":"10419","inReplyTo":"7vhchq11n2.fsf@gitster.siamese.dyndns.org","subject":"Re: What's in git.git (stable frozen)","fromName":"Paul Mackerras","fromEmail":"paulus@samba.org","sentAt":"2008-01-07T21:58:29Z","receivedAt":"2008-01-07T21:58:29Z","isPatch":false,"sender":{"key":"paulus@samba.org","avatar":"https://avatars.githubusercontent.com/u/1606439?v=4"},"body":"Junio C Hamano writes:\n\n> Subsystem people (except Shawn, whose git-gui 0.9.1 is already\n> in) are requested to tell me to pull from them, if they have\n> accumulated changes that should be in the final release.  I am\n> hoping that I can tag -rc3 in a few days (say by the end of my\n> Wednesday).\n\nI'd like you to do a pull from the gitk.git master branch, but it\nlooks to me like there will be a conflict on the Makefile.\nUnfortunately the Makefile that Christian Stimming gave me along with\nthe i18n changes is quite different from the one you currently have in\nthe gitk-git subdirectory.  I'm not quite sure what to suggest since\nit isn't clear to me exactly what Christian's Makefile (which doesn't\nactually work) is trying to do.  I guess the best thing would be to\ncopy your Makefile over and then add the i18n stuff.\n\nApart from the i18n changes, there is one more commit (b039f0a6) that\nimproves the appearance slightly when running under Tk8.5.\n\nPaul.\n"},{"id":"64680","messageId":"200801072305.59425.stimming@tuhh.de","threadId":"10419","inReplyTo":"18306.41093.376963.228802@cargo.ozlabs.ibm.com","subject":"Re: What's in git.git (stable frozen)","fromName":"Christian Stimming","fromEmail":"stimming@tuhh.de","sentAt":"2008-01-07T22:05:58Z","receivedAt":"2008-01-07T22:05:58Z","isPatch":false,"sender":{"key":"stimming@tuhh.de","avatar":"https://avatars.githubusercontent.com/u/227778?v=4"},"body":"Am Montag, 7. Januar 2008 22:58 schrieb Paul Mackerras:\n> I'd like you to do a pull from the gitk.git master branch, but it\n> looks to me like there will be a conflict on the Makefile.\n> Unfortunately the Makefile that Christian Stimming gave me along with\n> the i18n changes is quite different from the one you currently have in\n> the gitk-git subdirectory.  I'm not quite sure what to suggest since\n> it isn't clear to me exactly what Christian's Makefile (which doesn't\n> actually work) is trying to do.  \n\nThe Makefile from me was merely a placeholder where the i18n programs should \nwork, but it was clear that the installation rules need to be defined \ndifferently anyway.\n\n> I guess the best thing would be to \n> copy your Makefile over and then add the i18n stuff.\n\nYes. I've just sent you a patch that does exactly this - that was what I \nthought, too.\n\n> Apart from the i18n changes, there is one more commit (b039f0a6) that\n> improves the appearance slightly when running under Tk8.5.\n\nAre you going to release a i18n-enabled gitk sometime soon? If yes, you should \nconsider notifying the translator(s) a few days in advance so that they can \nfinalize their translations, in case they want to avoid a half-translated \nprogram to be shipped. Thanks a lot.\n\nChristian\n"},{"id":"64681","messageId":"7vve65xozp.fsf@gitster.siamese.dyndns.org","threadId":"10419","inReplyTo":"200801072305.59425.stimming@tuhh.de","subject":"Re: What's in git.git (stable frozen)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-07T22:14:18Z","receivedAt":"2008-01-07T22:14:18Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Christian Stimming <stimming@tuhh.de> writes:\n\n> Am Montag, 7. Januar 2008 22:58 schrieb Paul Mackerras:\n>> I'd like you to do a pull from the gitk.git master branch, but it\n>> looks to me like there will be a conflict on the Makefile.\n>> Unfortunately the Makefile that Christian Stimming gave me along with\n>> the i18n changes is quite different from the one you currently have in\n>> the gitk-git subdirectory.  I'm not quite sure what to suggest since\n>> it isn't clear to me exactly what Christian's Makefile (which doesn't\n>> actually work) is trying to do.  \n>\n> The Makefile from me was merely a placeholder where the i18n programs should \n> work, but it was clear that the installation rules need to be defined \n> differently anyway.\n>\n>> I guess the best thing would be to \n>> copy your Makefile over and then add the i18n stuff.\n>\n> Yes. I've just sent you a patch that does exactly this - that was what I \n> thought, too.\n\nThanks both of you.\n\n>> Apart from the i18n changes, there is one more commit (b039f0a6) that\n>> improves the appearance slightly when running under Tk8.5.\n>\n> Are you going to release a i18n-enabled gitk sometime soon? If yes, you should \n> consider notifying the translator(s) a few days in advance so that they can \n> finalize their translations, in case they want to avoid a half-translated \n> program to be shipped. Thanks a lot.\n\nIf I understand correctly, what Paul told me to pull contains\nthe i18n stuff, so assuming your adjustment to gitk Makefile\nmakes things cleanly merge and build inside git.git repository,\nupcoming 1.5.4-rc3 will ship with the infrastructure and\nexisting translations, and updates to po/ files can be made\nbetween -rc3 and the final (I do not mean there won't be -rc4.\nThat is also \"between -rc3 and final\").\n"}]}