Re: What's cooking in git.git (Aug 2014, #01; Fri, 1)
On Fri, Aug 01, 2014 at 03:01:31PM -0700, Junio C Hamano wrote: * jk/stash-list-p (2014-07-30) 7 commits - SQUASH??? future-proof, log --cc should imply -p without being told - stash: show combined diff with stash show - stash: default listing to --cc --simplify-combined-diff - add --simplify-combined-diff option - pretty: make empty userformats truly empty - pretty: treat --format= as an empty userformat - revision: drop useless string offset when parsing --pretty Teach git stash list -p to DWIM to git stash list -p --cc, with even nicer twist to collapse combined diff from identical two parents into a regular diff. What do you want to do with this topic? I think we want to drop the stash show patch, based on the discussion we had. The first three patches are nominally prep for that final patch, but actually are things I've often wanted over the years. I'd be glad if they made it in separately, but there were some compatibility questions. As clever as I find the --simplify-combined-diff patch, I think we came to the conclusion that --first-parent is probably the reasonable choice. It matches stash show, and it's simple and obvious. Do we just want a patch to specify --first-parent to stash-log? That would make -p just work. The only downside is that there isn't a good way to turn it off. Is it enough to say if you want to do something clever, use git-log? Or do we want to scrap the whole thing and try to update the documentation to make it more clear why -p by itself doesn't do anything? -Peff -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: What's cooking in git.git (Aug 2014, #01; Fri, 1)
Jeff King p...@peff.net writes: On Fri, Aug 01, 2014 at 03:01:31PM -0700, Junio C Hamano wrote: * jk/stash-list-p (2014-07-30) 7 commits - SQUASH??? future-proof, log --cc should imply -p without being told - stash: show combined diff with stash show - stash: default listing to --cc --simplify-combined-diff - add --simplify-combined-diff option - pretty: make empty userformats truly empty - pretty: treat --format= as an empty userformat - revision: drop useless string offset when parsing --pretty Teach git stash list -p to DWIM to git stash list -p --cc, with even nicer twist to collapse combined diff from identical two parents into a regular diff. What do you want to do with this topic? I think we want to drop the stash show patch, based on the discussion we had. The first three patches are nominally prep for that final patch, but actually are things I've often wanted over the years. I'd be glad if they made it in separately, but there were some compatibility questions. I am not sure what compatibility you are worried about. The empty format one looks like a pure bugfix to me, and I agree that they are good changes regardless of the remainder of the series. As clever as I find the --simplify-combined-diff patch, I think we came to the conclusion that --first-parent is probably the reasonable choice. It matches stash show, and it's simple and obvious. Do we just want a patch to specify --first-parent to stash-log? That would make -p just work. The only downside is that there isn't a good way to turn it off. Perhaps we can add --no-first-parent to countermand it? Is it enough to say if you want to do something clever, use git-log? Or do we want to scrap the whole thing and try to update the documentation to make it more clear why -p by itself doesn't do anything? The latter is the most conservative, but it may be too conservative to be useful ;-). Unless we stop advertising that stash list is a thin wrapper around log -g with options that would be useful to view the stash, which is a strange ref with useful reflog entries, the --first-parent approach would be the most sensible, I would say. If we can dissociate stash list from log (in other words, the set of options stash list takes does not have anything to do with the underlying log, even though both may have -p to tell them to give patches, etc.), it would be a totally different matter, and it might give us a better future, but I suspect it might be a bit too late for that. -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
What's cooking in git.git (Aug 2014, #01; Fri, 1)
Here are the topics that have been cooking. Commits prefixed with '-' are only in 'pu' (proposed updates) while commits prefixed with '+' are in 'next'. First release candidate 2.1.0-rc1 expected early next week, after merging a couple of obvious documentation update patches. You can find the changes described here in the integration branches of the repositories listed at http://git-blame.blogspot.com/p/git-public-repositories.html -- [Graduated to master] * ep/avoid-test-a-o (2014-07-25) 1 commit (merged to 'next' on 2014-07-27 at 45de31d) + t9814: fix misconversion from test $a -o $b to test $a || test $b Fix a post v2.0 regression in 'master'. * jk/more-push-completion (2014-07-22) 3 commits (merged to 'next' on 2014-07-28 at d1d4c27) + completion: complete `git push --force-with-lease=` + completion: add some missing options to `git push` + completion: complete unstuck `git push --recurse-submodules` * sk/mingw-tests-workaround (2014-07-21) 6 commits (merged to 'next' on 2014-07-28 at 2f3b7ac) + t800[12]: work around MSys limitation + t9902: mingw-specific fix for gitfile link files + t4210: skip command-line encoding tests on mingw + MinGW: disable legacy encoding tests + t0110/MinGW: skip tests that pass arbitrary bytes on the command line + MinGW: Skip test redirecting to fd 4 (this branch is used by jc/not-mingw-cygwin.) Make tests pass on msysgit by mostly disabling ones that are infeasible on that platform. * sk/mingw-uni-fix-more (2014-07-21) 14 commits (merged to 'next' on 2014-07-28 at 0945196) + Win32: enable color output in Windows cmd.exe + Win32: patch Windows environment on startup + Win32: keep the environment sorted + Win32: use low-level memory allocation during initialization + Win32: reduce environment array reallocations + Win32: don't copy the environment twice when spawning child processes + Win32: factor out environment block creation + Win32: unify environment function names + Win32: unify environment case-sensitivity + Win32: fix environment memory leaks + Win32: Unicode environment (incoming) + Win32: Unicode environment (outgoing) + Revert Windows: teach getenv to do a case-sensitive search + tests: do not pass iso8859-1 encoded parameter Most of these are battle-tested in msysgit and are needed to complete what has been merged to 'master' already. -- [New Topics] * jk/stash-list-p (2014-07-30) 7 commits - SQUASH??? future-proof, log --cc should imply -p without being told - stash: show combined diff with stash show - stash: default listing to --cc --simplify-combined-diff - add --simplify-combined-diff option - pretty: make empty userformats truly empty - pretty: treat --format= as an empty userformat - revision: drop useless string offset when parsing --pretty Teach git stash list -p to DWIM to git stash list -p --cc, with even nicer twist to collapse combined diff from identical two parents into a regular diff. * pr/remotes-in-hashmap (2014-07-30) 1 commit - use a hashmap to make remotes faster Optimize remotes configuration look-up in a repository with very many remotes defined. * rs/ref-transaction-multi (2014-07-31) 5 commits - refs.c: make the *_packed_refs functions static - refs.c: make repack_without_refs static - remote.c: use a transaction for deleting refs - refs.c: write updates to packed refs when a transaction has more than one ref - refs.c: move reflog updates into its own function (this branch uses rs/ref-transaction, rs/ref-transaction-1, rs/ref-transaction-reflog and rs/ref-transaction-rename.) Follow-up on rs/ref-transaction series to use the packed-ref to achieve atomicity when multiple refs are involved. * rs/ref-transaction-rename (2014-07-31) 5 commits - refs.c: rollback the lockfile before we die() in repack_without_refs - refs.c: update rename_ref to use a transaction - refs.c: use packed refs when deleting refs during a transaction - refs.c: return error instead of dying when locking fails during transaction - refs.c: allow passing raw git_committer_info as email to _update_reflog (this branch is used by rs/ref-transaction-multi; uses rs/ref-transaction, rs/ref-transaction-1 and rs/ref-transaction-reflog.) Follow-up on rs/ref-transaction series to make renaming a ref transactional (i.e. delete old and create new should not leave an in-between state behind when it fails). * ta/doc-config (2014-07-30) 1 commit (merged to 'next' on 2014-07-31 at ec577fa) + add documentation for writing config files Will merge to 'master'. * tf/maint-doc-push (2014-07-31) 1 commit (merged to 'next' on 2014-07-31 at 6a8ef70) + git-push: fix link in man page Will merge to 'master' and later to 'maint'. * nd/lock-paths-absolute (2014-08-01) 3 commits - lockfile.c: store absolute path - lockfile.c: remove PATH_MAX limit in resolve_symlink() - lockfile.c: