X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=HAVEDONE;h=54455589cdd8834f2a33b5569c50f93441dc34d2;hb=27442c64acd1f12e613a6a5c59c4d476df584160;hp=aeccb1281156ad245e1626994f589eb235c3daa5;hpb=6dc88cc0dcda3b6654accc15e2b949b340fa4bfd;p=git.git diff --git a/HAVEDONE b/HAVEDONE index aeccb128..54455589 100644 --- a/HAVEDONE +++ b/HAVEDONE @@ -1,104 +1,48 @@ -Done in 0.99.7 +Done in 0.99.8 ============== -Organization -~~~~~~~~~~~~ - -Some commands and most scripts are renamed for consistency. - - - We have an official standard terminology list [*1*]. To - match this, commands that operate on index files now have - 'index' instead of 'cache' in their names, and ones that - download are called 'fetch' instead of 'pull'. - - - We used to install most of the commands that happen to be - implemented as scripts as 'git-*-script', which was - cumbersome to remember and type unless you always used 'git' - wrapper. They lost '-script' suffix from their names. - -For now, we install synonyms as symbolic links so that old -names continue to work, but they are planned to be removed in -0.99.8 (or later if there are enough objections on the list -- -so far I have heard none). - -Also ancient environment variables [*2*] are not supported -anymore. - - New Features and Commands ~~~~~~~~~~~~~~~~~~~~~~~~~ -Downloaders that are not fully git aware have been taught about -the mechanism to borrow objects from other repositories via -objects/info/alternates the server side may be using. 'git -fetch' and 'git pull' commands over rsync and http transport -should be able to handle such repositories [*3*]. +* 'git pull' now uses 'git-merge' instead of 'git-resolve', so you can + specify alternative merge strategy to use on its command line. -People found interesting cases where the 'stupid' three-way -merge mechanism does the wrong thing without noticing. We have -two new merge algorithms by Daniel and Fredrik that attempt to -do better in such cases. A new 'git merge' command has been -introduced to make it easier to experiment with and choose among -different merge strategies. Note that 'git pull' still uses the -traditional three-way merge after downloading, but it is -expected to be switched to use 'git merge' sometime in the -future. +* 'git pull -s recursive' has been taught about renaming merges, + which may deal with HPA's klibc vs klibc-kbuild situation better. -Importing from tla archives has been improved and documentated. +* Symbolic refs -- instead of using symlinks to express .git/HEAD, + you can have a regular file that stores a single line + 'ref: refs/heads/master' in it. -'git branch' command acquired '-d' flag to delete a branch that -has already been merged into the current branch. + git-update-ref is the preferred way to write into .git/HEAD, + not "echo >.git/HEAD". git-symbolic-ref is the preferred way + to check which underlying ref a symbolic ref .git/HEAD refers + to, not "readlink .git/HEAD". -'git bisect' command is easier to use by logging the earlier -good/bad choices and make it replayable. +* A couple of new diff options (-l and --name-status). -'git repack' has -a' flag to pack the whole repository into a -single pack. +* Commit walker over http acquired more SSL options. -'git grep' is a new command to run grep on files 'git' knows -about. +* 'git clone' checks out the working tree by default. Fixes ~~~~~ -* 'git-diff-*' commands used to mark copy/rename incorrectly - when an (A,B) => (B,C) rename was made. We said the new B is - a copy of old A, not a rename of old A. - -* When the user exported CDPATH into environment, 'cd' took - scripts to unexpected places. Unset it upfront to guard us. - -* 'git format-patch' knows about 'git cherry' and skips patches - already merged upstream. - -* hopefully plugged memory leak in diffcore-rename properly. - -* commit walkers incorrectly assumed having a commit means we - have the whole history leading up to it -- which is not true - if the previous download was interrupted. As a safety - measure, we now only trust the commits that are pointed by the - existing refs. - -* 'git rev-list' uses a lot less memory. - -* The build should be a bit friendlier to Solaris and Darwin now. - -* 'git ssh-{push,pull}' are friendlier to tcsh. - -* http transport is nicer to caching proxies. +* Removed unused commands (diff-helper, rev-tree, and export). -* 'git daemon' port is registered with IANA. +* Platforms with only Python 2.3 installed can use recursive merge + strategy. -* Many documentation updates. +* Octopus documented. +* Merge is more careful noticing potentially ambiguous situation. -[Footnotes] -*1* http://www.kernel.org/pub/software/scm/git/docs/glossary.html +* Git pull does not blindly do Octopus when Pull: lines in remotes + file specifies more than one remote branches. -*2* Ancient environment variable names: SHA1_FILE_DIRECTORIES -AUTHOR_DATE AUTHOR_EMAIL AUTHOR_NAME COMMIT_AUTHOR_EMAIL -COMMIT_AUTHOR_NAME SHA1_FILE_DIRECTORY +* Commit walker got safer to use after interrupted downloads. -*3* But not grafts. +* Commit walker over http can resume partial downloads. +* More portability fixes for BSD and Solaris.