{"thread":{"id":"43431","subject":"Re: What's in git.git","startedAt":"2006-11-02T00:53:18Z","lastAt":"2006-11-05T18:47:42Z","messageCount":4,"participants":["Johannes Schindelin","Junio C Hamano","Rene Scharfe"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"297815","messageId":"7vk62ewtxd.fsf@assigned-by-dhcp.cox.net","threadId":"43431","inReplyTo":null,"subject":"What's in git.git","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2006-11-02T00:53:18Z","receivedAt":"2006-11-02T00:53:18Z","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\n  We have one semantic fix in \"maint\".  To the revision traversal\n  machinery, --unpacked used to mean that any commit that is in a\n  pack is uninteresting and tainted its ancestors also\n  uninteresting.  Updated semantics of --unpacked is just an\n  output filter -- it traverses ancestry chain as usual, but does\n  not show unpacked commits.  This made what \"git repack\" does\n  actually make sense when the repository is partly packed in the\n  half-way (the earlier logic worked fine only if all ancestors of\n  a packed commit were all packed).\n\n  A few minor \"diff --cc\" output fixes are also in \"maint\".  It\n  now honours --no-commit-id option and shows function names on\n  the @@@ ... @@@ line just like normal diffs do.\n\n\n   Christian Couder (2):\n      Documentation: add upload-archive service to git-daemon.\n      Documentation: add git in /etc/services.\n\n   Edgar Toernig (1):\n      Use memmove instead of memcpy for overlapping areas\n\n   Jakub Narebski (2):\n      diff-format.txt: Correct information about pathnames quoting in\n\tpatch format\n      gitweb: Check git base URLs before generating URL from it\n\n   Jan Harkes (1):\n      Continue traversal when rev-list --unpacked finds a packed commit.\n\n   Junio C Hamano (7):\n      combine-diff: a few more finishing touches.\n      combine-diff: fix hunk_comment_line logic.\n      combine-diff: honour --no-commit-id\n      Surround \"#define DEBUG 0\" with \"#ifndef DEBUG..#endif\"\n      quote.c: ensure the same quoting across platforms.\n      revision traversal: --unpacked does not limit commit list anymore.\n      link_temp_to_file: don't leave the path truncated on\n\tadjust_shared_perm failure\n\n   Nicolas Pitre (1):\n      pack-objects doesn't create random pack names\n\n   Rene Scharfe (1):\n      git-cherry: document limit and add diagram\n\n\n* The 'master' branch has these since the last announcement.\n\n  Linus's packed-refs work with associated refs handling\n  clean-ups are out on \"master\", but there is one disclaimer.\n  Commit walkers cannot fetch from a repository whose refs are\n  packed and then pruned yet, so people with public repositories\n  that are expected to be fetched via http should not run\n  git-pack-refs just yet.  I think it is probably just the\n  matter of updating git-fetch.sh to run ls-remote against the\n  repository upfront, and use the SHA-1 of wanted branch tip\n  instead of the branch tip name when running the low-level\n  git-http-fetch.\n\n  git-branch and git-cherry are now built-in.\n\n   Andy Parkins (1):\n      Make filenames line up in git-status output\n\n   Christian Couder (14):\n      Add [-s|--hash] option to Linus' show-ref.\n      Use Linus' show ref in \"git-branch.sh\".\n      Document git-show-ref [-s|--hash] option.\n      Fix show-ref usage for --dereference.\n      Add pack-refs and show-ref test cases.\n      When creating branch c/d check that branch c does not already exists.\n      Uncomment test case: git branch c/d should barf if branch c exists.\n      Fix a remove_empty_dir_recursive problem.\n      Clean up \"git-branch.sh\" and add remove recursive dir test cases.\n      Use git-update-ref to delete a tag instead of rm()ing the ref file.\n      Check that a tag exists using show-ref instead of looking for the\n\tref file.\n      Do not create tag leading directories since git update-ref does it.\n      Documentation: add upload-archive service to git-daemon.\n      Documentation: add git in /etc/services.\n\n   Dennis Stosberg (3):\n      lock_ref_sha1_basic does not remove empty directories on BSD\n      Remove bashism from t3210-pack-refs.sh\n      Bash completion support for aliases\n\n   Edgar Toernig (2):\n      Use memmove instead of memcpy for overlapping areas\n      Use memmove instead of memcpy for overlapping areas\n\n   Jakub Narebski (8):\n      gitweb: Use --no-commit-id in git_commit and git_commitdiff\n      diff-format.txt: Correct information about pathnames quoting in\n\tpatch format\n      gitweb: Check git base URLs before generating URL from it\n      Documentation: Update information about <format> in git-for-each-ref\n      gitweb: Move git_get_last_activity subroutine earlier\n      gitweb: Add \"next\" link to commitdiff view\n      gitweb: Secure against commit-ish/tree-ish with the same name as path\n      gitweb: Use 's' regexp modifier to secure against filenames with LF\n\n   Jan Harkes (1):\n      Continue traversal when rev-list --unpacked finds a packed commit.\n\n   Jeff King (3):\n      wt-status: use simplified resolve_ref to find current branch\n      gitignore: git-pack-refs is a generated file.\n      gitignore: git-show-ref is a generated file.\n\n   Johannes Schindelin (2):\n      Fix git-update-index --again\n      show-branch: mark active branch with a '*' again\n\n   Jonas Fonseca (1):\n      Add man page for git-show-ref\n\n   Junio C Hamano (42):\n      Fix t1400-update-ref test minimally\n      fsck-objects: adjust to resolve_ref() clean-up.\n      symbolit-ref: fix resolve_ref conversion.\n      Add callback data to for_each_ref() family.\n      Tell between packed, unpacked and symbolic refs.\n      pack-refs: do not pack symbolic refs.\n      git-pack-refs --prune\n      pack-refs: fix git_path() usage.\n      lock_ref_sha1_basic: remove unused parameter \"plen\".\n      Clean-up lock-ref implementation\n      update-ref: -d flag and ref creation safety.\n      update a few Porcelain-ish for ref lock safety.\n      Teach receive-pack about ref-log\n      receive-pack: call setup_ident before git_config\n      ref locking: allow 'foo' when 'foo/bar' used to exist but not anymore.\n      refs: minor restructuring of cached refs data.\n      lock_ref_sha1(): do not sometimes error() and sometimes die().\n      lock_ref_sha1(): check D/F conflict with packed ref when creating.\n      delete_ref(): delete packed ref\n      git-branch: remove D/F check done by hand.\n      show-ref --hash=len, --abbrev=len, and --abbrev\n      git-fetch: adjust to packed-refs.\n      Fix refs.c;:repack_without_ref() clean-up path\n      git-fetch: do not look into $GIT_DIR/refs to see if a tag exists.\n      pack-refs: use lockfile as everybody else does.\n      pack-refs: call fflush before fsync.\n      ref-log: allow ref@{count} syntax.\n      core.logallrefupdates create new log file only for branch heads.\n      git-pack-refs --all\n      core.logallrefupdates thinko-fix\n      ref-log: fix D/F conflict coming from deleted refs.\n      sha1_name.c: avoid compilation warnings.\n      t3200: git-branch testsuite update\n      combine-diff: fix hunk_comment_line logic.\n      combine-diff: honour --no-commit-id\n      tests: merge-recursive is usable without Python\n      Documentation: fix git-format-patch mark-up and link it from git.txt\n      Surround \"#define DEBUG 0\" with \"#ifndef DEBUG..#endif\"\n      quote.c: ensure the same quoting across platforms.\n      revision traversal: --unpacked does not limit commit list anymore.\n      link_temp_to_file: don't leave the path truncated on\n\tadjust_shared_perm failure\n      branch: work in subdirectories.\n\n   Lars Hjemli (2):\n      Make git-branch a builtin\n      Fix show-ref usagestring\n\n   Linus Torvalds (6):\n      Add \"git show-ref\" builtin command\n      Teach \"git checkout\" to use git-show-ref\n      Start handling references internally as a sorted in-memory list\n      Add support for negative refs\n      Make ref resolution saner\n      Enable the packed refs file format\n\n   Luben Tuikov (2):\n      git-revert with conflicts to behave as git-merge with conflicts\n      gitweb: esc_html() author in blame\n\n   Nicolas Pitre (1):\n      pack-objects doesn't create random pack names\n\n   Petr Baudis (3):\n      Fix broken sha1 locking\n      Fix buggy ref recording\n      gitweb: Fix up bogus $stylesheet declarations\n\n   Rene Scharfe (3):\n      Built-in cherry\n      Make git-cherry handle root trees\n      git-cherry: document limit and add diagram\n\n   Robin Rosenberg (2):\n      Mention that pull can work locally in the synopsis\n      Swap the porcelain and plumbing commands in the git man page\n\n   Sasha Khapyorsky (1):\n      git-svnimport: support for partial imports\n\n   Sergey Vlasov (2):\n      git-send-email: Document support for local sendmail instead of\n\tSMTP server\n      git-send-email: Read the default SMTP server from the GIT config file\n\n   Shawn Pearce (1):\n      Move deny_non_fast_forwards handling completely into receive-pack.\n\n\n* The 'next' branch, in addition, has these.\n\n  The largest one is \"pickaxe\"; I think it is ready for wider\n  testing if not for production use, and it is a new command so\n  it should be relatively safe to push it out anytime on \"master\".\n\n  Nico did a lot of work on index-pack and with help from Shawn\n  pushing many objects without exploding them into loose objects\n  at the other end is becoming reality.  The latest part of\n  their series is not in \"next\" nor \"pu\" yet, though.\n\n  Linus pointed out that when merging a branch based on an older\n  codebase that used to have a path into your branch that does\n  not have that path tracked anymore triggers a bogus safety\n  valve; I've done both merge-resolve and merge-recursive to\n  handle this situation but the result needs to be sanity\n  checked.  We are _loosening_ safety valve and need to be extra\n  cautious not to overloosen it.\n\n   Junio C Hamano (28):\n      upload-pack: stop the other side when they have more roots than we do.\n      git-pickaxe: blame rewritten.\n      git-pickaxe -M: blame line movements within a file.\n      git-pickaxe -C: blame cut-and-pasted lines.\n      git-pickaxe: pagenate output by default.\n      git-pickaxe: fix nth_line()\n      git-pickaxe: improve \"best match\" heuristics\n      git-pickaxe: introduce heuristics to avoid \"trivial\" chunks\n      git-pickaxe: do not keep commit buffer.\n      git-pickaxe: do not confuse two origins that are the same.\n      git-pickaxe: get rid of wasteful find_origin().\n      git-pickaxe: swap comparison loop used for -C\n      merge: loosen overcautious \"working file will be lost\" check.\n      merge-recursive: use abbreviated commit object name.\n      merge-recursive: make a few functions static.\n      merge-recursive: adjust to loosened \"working file clobbered\" check\n      t6022: ignoring untracked files by merge-recursive when they do not\n\tmatter\n      send-pack --keep: do not explode into loose objects on the receiving end.\n      git-pickaxe: WIP to refcount origin structure.\n      git-pickaxe: allow -Ln,m as well as -L n,m\n      git-pickaxe: refcount origin correctly in find_copy_in_parent()\n      git-pickaxe: tighten sanity checks.\n      Revert \"send-pack --keep: do not explode into loose objects on the\n\treceiving end.\"\n      git-pickaxe: split find_origin() into find_rename() and find_origin().\n      git-pickaxe: cache one already found path per commit.\n      Introduce a new revision set operator <rev>^!\n\n   Linus Torvalds (2):\n      Allow '-' in config variable names\n      git push: add verbose flag and allow overriding of default target\n\trepository\n\n   Nicolas Pitre (8):\n      enable index-pack streaming capability\n      make index-pack able to complete thin packs.\n      add progress status to index-pack\n      mimic unpack-objects when --stdin is used with index-pack\n      enhance clone and fetch -k experience\n      index-pack: minor fixes to comment and function name\n      missing small substitution\n      make git-push a bit more verbose\n\n   Petr Baudis (1):\n      gitweb: Support for 'forks'\n\n   Shawn Pearce (4):\n      Allow short pack names to git-pack-objects --unpacked=.\n      Only repack active packs by skipping over kept packs.\n      Teach git-index-pack how to keep a pack file.\n      Remove unused variable in receive-pack.\n\n\n* The 'pu' branch, in addition, has these.\n\n  Johannes's \"shallow\" was marked as \"pu\" material so I've based\n  the series on the tip of \"next\" (which means we cannot\n  directly merge that into \"next\" or \"master\" without rebasing\n  it to \"master\" first) and parked it in \"pu\".  I have given\n  only a cursory look to it but it looks promising.\n\n  Nico's latest 6-series builds on top of what Shawn has here\n  (the first two from Nico are the same), but I haven't gotten\n  around to them yet.\n\n   Johannes Schindelin (6):\n      upload-pack: no longer call rev-list\n      support fetching into a shallow repository\n      allow cloning a repository \"shallowly\"\n      allow deepening of a shallow repository\n      add tests for shallow stuff\n      Build in shortlog\n\n   Junio C Hamano (4):\n      rev-list --left-right\n      git-diff/git-apply: make diff output a bit friendlier to GNU\n\tpatch (part 2)\n      para-walk: walk n trees, index and working tree in parallel\n      git-commit: show --summary after successful commit.\n\n   Shawn Pearce (2):\n      Allow pack header preprocessing before unpack-objects/index-pack.\n      Teach receive-pack how to keep pack files based on object count.\n\n"},{"id":"294754","messageId":"Pine.LNX.4.63.0611021055550.1670@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"43431","inReplyTo":"7vk62ewtxd.fsf@assigned-by-dhcp.cox.net","subject":"Re: What's in git.git","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2006-11-02T10:02:58Z","receivedAt":"2006-11-02T10:02:58Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Wed, 1 Nov 2006, Junio C Hamano wrote:\n\n> * The 'pu' branch, in addition, has these.\n> \n>   Johannes's \"shallow\" was marked as \"pu\" material so I've based\n>   the series on the tip of \"next\" (which means we cannot\n>   directly merge that into \"next\" or \"master\" without rebasing\n>   it to \"master\" first) and parked it in \"pu\".  I have given\n>   only a cursory look to it but it looks promising.\n\nNote that I have no use for shallow clones myself, since I really like to \nhave the complete history around. It also makes for a nice distributed \nbackup solution.\n\nThe reasons I did it:\n\n- 'cause I could\n- I think it is important for other people (this means you, Jon)\n- I suggested lazy clones as an easy way out, but I am now convinced that \nthey introduce more problems than they solve. Therefore I wanted to make \ngood for the confusion I helped develop.\n\nSince I do not have any use for shallow clones myself, I am waiting for \npeople to jump on it, test it, and shout \"Hooray\" or \"Nacknacknack\".\n\nCiao,\nDscho\n"},{"id":"298415","messageId":"454E1E69.2040209@lsrfire.ath.cx","threadId":"43431","inReplyTo":"7vk62ewtxd.fsf@assigned-by-dhcp.cox.net","subject":"Re: What's in git.git","fromName":"Rene Scharfe","fromEmail":"rene.scharfe@lsrfire.ath.cx","sentAt":"2006-11-05T17:24:57Z","receivedAt":"2006-11-05T17:24:57Z","isPatch":false,"sender":{"key":"l.s.r@web.de","avatar":"https://avatars.githubusercontent.com/u/26122331?v=4"},"body":"Junio C Hamano schrieb:\n>   git-branch and git-cherry are now built-in.\n\nYes, but git-cherry.sh still exists in master (but not in next).\nIntentionally?\n\n"},{"id":"296836","messageId":"7vlkmpu3w1.fsf@assigned-by-dhcp.cox.net","threadId":"43431","inReplyTo":"454E1E69.2040209@lsrfire.ath.cx","subject":"Re: What's in git.git","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2006-11-05T18:47:42Z","receivedAt":"2006-11-05T18:47:42Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Rene Scharfe <rene.scharfe@lsrfire.ath.cx> writes:\n\n> Junio C Hamano schrieb:\n>>   git-branch and git-cherry are now built-in.\n>\n> Yes, but git-cherry.sh still exists in master (but not in next).\n> Intentionally?\n\nThanks for catching this; it was a mismerge in commit 56532fa1.\n\n"}]}