Posted 2 days ago by Pieter de Bie
Hi All,
I just wanted to let you know that GitX has recently reached its first
tagged release.
GitX is a gitk clone aiming to provide a more native interface to OS X
users with OS X-only features.
Current
... [More]
features include:
* Show pretty information for any revision
* Fast
* Nice Aqua Document-based interface
* Quickly search for any commit subject / author
* Explore the tree of any revision
* QuickLook any file in any revision
* Double click any file or directory in a tree to open that version
* Similarly, you can drag a part of a tree on to your desktop
GitX currently has it's homepage hosted at github. To view it, go to
http://github.com/pieter/gitx/wikis
You can download the latest stable release from
http://frim.frim.nl/GitXStable.app.zip
Thanks,
Pieter
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
Posted 12 days ago by Junio C Hamano
The latest feature release GIT 1.6.0 is available at the usual
places:
http://www.kernel.org/pub/software/scm/git/
git-1.6.0.tar.{gz,bz2} (source tarball)
git-htmldocs-1.6.0.tar.{gz,bz2} (preformatted
... [More]
docs)
git-manpages-1.6.0.tar.{gz,bz2} (preformatted docs)
The RPM binary packages for a few architectures are also provided
as courtesy.
RPMS/$arch/*-1.6.0-1.fc9.$arch.rpm (RPM)
GIT v1.6.0 Release Notes
========================
User visible changes
--------------------
With the default Makefile settings, most of the programs are now
installed outside your $PATH, except for "git", "gitk" and
some server side programs that need to be accessible for technical
reasons. Invoking a git subcommand as "git-xyzzy" from the command
line has been deprecated since early 2006 (and officially announced in
1.5.4 release notes); use of them from your scripts after adding
output from "git --exec-path" to the $PATH is still supported in this
release, but users are again strongly encouraged to adjust their
scripts to use "git xyzzy" form, as we will stop installing
"git-xyzzy" hardlinks for built-in commands in later releases.
An earlier change to page "git status" output was overwhelmingly unpopular
and has been reverted.
Source changes needed for porting to MinGW environment are now all in the
main git.git codebase.
By default, packfiles created with this version uses delta-base-offset
encoding introduced in v1.4.4. Pack idx files are using version 2 that
allows larger packs and added robustness thanks to its CRC checking,
introduced in v1.5.2 and v1.4.4.5. If you want to keep your repositories
backwards compatible past these versions, set repack.useDeltaBaseOffset
to false or pack.indexVersion to 1, respectively.
We used to prevent sample hook scripts shipped in templates/ from
triggering by default by relying on the fact that we install them as
unexecutable, but on some filesystems, this approach does not work.
They are now shipped with ".sample" suffix. If you want to activate
any of these samples as-is, rename them to drop the ".sample" suffix,
instead of running "chmod x" on them. For example, you can rename
hooks/post-update.sample to hooks/post-update to enable the sample
hook that runs update-server-info, in order to make repositories
friendly to dumb protocols (i.e. HTTP).
GIT_CONFIG, which was only documented as affecting "git config", but
actually affected all git commands, now only affects "git config".
GIT_LOCAL_CONFIG, also only documented as affecting "git config" and
not different from GIT_CONFIG in a useful way, is removed.
The ".dotest" temporary area "git am" and "git rebase" use is now moved
inside the $GIT_DIR, to avoid mistakes of adding it to the project by
accident.
An ancient merge strategy "stupid" has been removed.
Updates since v1.5.6
--------------------
(subsystems)
* git-p4 in contrib learned "allowSubmit" configuration to control on
which branch to allow "submit" subcommand.
* git-gui learned to stage changes per-line.
(portability)
* Changes for MinGW port have been merged, thanks to Johannes Sixt and
gangs.
* Sample hook scripts shipped in templates/ are now suffixed with
*.sample.
* perl's in-place edit (-i) does not work well without backup files on Windows;
some tests are rewritten to cope with this.
(documentation)
* Updated howto/update-hook-example
* Got rid of usage of "git-foo" from the tutorial and made typography
more consistent.
* Disambiguating "--" between revs and paths is finally documented.
(performance, robustness, sanity etc.)
* index-pack used too much memory when dealing with a deep delta chain.
This has been optimized.
* reduced excessive inlining to shrink size of the "git" binary.
* verify-pack checks the object CRC when using version 2 idx files.
* When an object is corrupt in a pack, the object became unusable even
when the same object is available in a loose form, We now try harder to
fall back to these redundant objects when able. In particular, "git
repack -a -f" can be used to fix such a corruption as long as necessary
objects are available.
* Performance of "git-blame -C -C" operation is vastly improved.
* git-clone does not create refs in loose form anymore (it behaves as
if you immediately ran git-pack-refs after cloning). This will help
repositories with insanely large number of refs.
* core.fsyncobjectfiles configuration can be used to ensure that the loose
objects created will be fsync'ed (this is only useful on filesystems
that does not order data writes properly).
* "git commit-tree" plumbing can make Octopus with more than 16 parents.
"git commit" has been capable of this for quite some time.
(usability, bells and whistles)
* even more documentation pages are now accessible via "man" and "git help".
* A new environment variable GIT_CEILING_DIRECTORIES can be used to stop
the discovery process of the toplevel of working tree; this may be useful
when you are working in a slow network disk and are outside any working tree,
as bash-completion and "git help" may still need to run in these places.
* By default, stash entries never expire. Set reflogexpire in [gc
"refs/stash"] to a reasonable value to get traditional auto-expiration
behaviour back
* Longstanding latency issue with bash completion script has been
addressed. This will need to be backmerged to 'maint' later.
* pager. configuration variable can be used to enable/disable the
default paging behaviour per command.
* "git-add -i" has a new action 'e/dit' to allow you edit the patch hunk
manually.
* git-am records the original tip of the branch in ORIG_HEAD before it
starts applying patches.
* git-apply can handle a patch that touches the same path more than once
much better than before.
* git-apply can be told not to trust the line counts recorded in the input
patch but recount, with the new --recount option.
* git-apply can be told to apply a patch to a path deeper than what the
patch records with --directory option.
* git-archive can be told to omit certain paths from its output using
export-ignore attributes.
* git-archive uses the zlib default compression level when creating
zip archive.
* git-archive's command line options --exec and --remote can take their
parameters as separate command line arguments, similar to other commands.
IOW, both "--exec=path" and "--exec path" are now supported.
* With -v option, git-branch describes the remote tracking statistics
similar to the way git-checkout reports by how many commits your branch
is ahead/behind.
* git-branch's --contains option used to always require a commit parameter
to limit the branches with; it now defaults to list branches that
contains HEAD if this parameter is omitted.
* git-branch's --merged and --no-merged option used to always limit the
branches relative to the HEAD, but they can now take an optional commit
argument that is used in place of HEAD.
* git-bundle can read the revision arguments from the standard input.
* git-cherry-pick can replay a root commit now.
* git-clone can clone from a remote whose URL would be rewritten by
configuration stored in $HOME/.gitconfig now.
* "git-clone --mirror" is a handy way to set up a bare mirror repository.
* git-cvsserver learned to respond to "cvs co -c".
* git-diff --check now checks leftover merge conflict markers.
* "git-diff -p" learned to grab a better hunk header lines in
BibTex, Pascal/Delphi, and Ruby files and also pays attention to
chapter and part boundary in TeX documents.
* When remote side used to have branch 'foo' and git-fetch finds that now
it has branch 'foo/bar', it refuses to lose the existing remote tracking
branch and its reflog. The error message has been improved to suggest
pruning the remote if the user wants to proceed and get the latest set
of branches from the remote, including such 'foo/bar'.
* fast-export learned to export and import marks file; this can be used to
interface with fast-import incrementally.
* fast-import and fast-export learned to export and import gitlinks.
* "gitk" left background process behind after being asked to dig very deep
history and the user killed the UI; the process is killed when the UI goes
away now.
* git-rebase records the original tip of branch in ORIG_HEAD before it is
rewound.
* "git rerere" can be told to update the index with auto-reused resolution
with rerere.autoupdate configuration variable.
* git-rev-parse learned $commit^! and $commit^@ notations used in "log"
family. These notations are available in gitk as well, because the gitk
command internally uses rev-parse to interpret its arguments.
* git-rev-list learned --children option to show child commits it
encountered during the traversal, instead of showing parent commits.
* git-send-mail can talk not just over SSL but over TLS now.
* git-shortlog honors custom output format specified with "--pretty=format:".
* "git-stash save" learned --keep-index option. This lets you stash away the
local changes and bring the changes staged in the index to your working
tree for examination and testing.
* git-stash also learned branch subcommand to create a new branch out of
stashed changes.
* git-status gives the remote tracking statistics similar to the way
git-checkout reports by how many commits your branch is ahead/behind.
* "git-svn dcommit" is now aware of auto-props setting the subversion user
has.
* You can tell "git status -u" to even more aggressively omit checking
untracked files with --untracked-files=no.
* Original SHA-1 value for "update-ref -d" is optional now.
* Error codes from gitweb are made more descriptive where possible, rather
than "403 forbidden" as we used to issue everywhere.
(internal)
* git-merge has been reimplemented in C.
Fixes since v1.5.6
------------------
All of the fixes in v1.5.6 maintenance series are included in
this release, unless otherwise noted.
* git-clone ignored its -u option; the fix needs to be backported to
'maint';
* git-mv used to lose the distinction between changes that are staged
and that are only in the working tree, by staging both in the index
after moving such a path.
* "git-rebase -i -p" rewrote the parents to wrong ones when amending
(either edit or squash) was involved, and did not work correctly
when fast forwarding.
----------------------------------------------------------------
Changes since v1.5.6 are as follows:
Abhijit Menon-Sen (13):
git-gui: Move on to the next filename after staging/unstaging a change
git-gui: Don't select the wrong file if the last listed file is staged.
Implement "git stash branch "
Add a test for "git stash branch"
git-gui: Look for gitk in $PATH, not $LIBEXEC/git-core
Clarify that "git log x.c y.h" lists commits that touch either file
`git submodule add` now requires a
Make it clear that push can take multiple refspecs
Make the DESCRIPTION match ... items in the SYNOPSIS
Git.pm: localise $? in command_close_bidi_pipe()
Fix hash slice syntax error
Fix typo in perl/Git.pm
Fix typos in INSTALL
Adam Brewster (2):
Move read_revisions_from_stdin from builtin-rev-list.c to revision.c
Teach git-bundle to read revision arguments from stdin like git-rev-list.
Alex Riesen (5):
Fix use of "perl -i" on Windows
git-clone: remove leftover debugging fprintf().
Allow pager of diff command be enabled/disabled
Make use of stat.ctime configurable
Fix t3700 on filesystems which do not support question marks in names
Alexander Gavrilov (18):
Fix quadratic performance in rewrite_one.
Avoid rescanning unchanged entries in search for copies.
Do not try to detect move/copy for entries below threshold.
Fix pre-commit hooks under MinGW/MSYS
Add options to control the search for copies in blame.
Kill the blame back-end on window close.
Add a menu item to invoke full copy detection in blame.
Support gitlinks in fast-import.
git-gui: Fix the Remote menu separator.
git-gui: Preserve scroll position on reshow_diff.
Support copy and rename detection in fast-export.
gitk: Kill back-end processes on window close
gitk: Arrange to kill diff-files & diff-index on quit
gitk: On Windows, use a Cygwin-specific flag for kill
gitk: Fixed broken exception handling in diff
gitk: Fixed automatic row selection during load
gitk: Fallback to selecting the head commit upon load
gitk: Allow safely calling nukefile from a run queue handler
Anand Kumria (14):
Create a specific version of the read_pipe_lines command for p4 invocations
Utilise the new 'p4_read_pipe_lines' command
Have a command that specifically invokes 'p4' (via system)
Utilise the new 'p4_system' function.
Add a single command that will be used to construct the 'p4' command
If we are in verbose mode, output what we are about to run (or return)
Switch to using 'p4_build_cmd'
If the user has configured various parameters, use them.
Consistently use 'git-p4' for the configuration entries
Move git-p4.syncFromOrigin into a configuration parameters section
Put some documentation in about the parameters that have been added
Put in the two other configuration elements found in the source
Add p4 read_pipe and write_pipe wrappers
Utilise our new p4_read_pipe and p4_write_pipe wrappers
Anders Melchiorsen (5):
Documentation: fix diff.external example
Advertise the ability to abort a commit
Documentation: fix diff.external example
Flush output in start_async
Add output flushing before fork()
Avery Pennarun (4):
git-svn: avoid filling up the disk with temp files.
Reword "your branch has diverged..." lines to reduce line length
Teach "git diff -p" Pascal/Delphi funcname pattern
git-svn: Abort with an error if 'fetch' parameter is invalid.
Björn Steinbrink (3):
git cat-file: Fix memory leak in batch mode
index-pack.c: correctly initialize appended objects
rev-parse: Add support for the ^! and ^@ syntax
Brad King (1):
git-svn: teach dcommit about svn auto-props
Brandon Casey (17):
git-merge.sh: fix typo in usage message: sucesses --> succeeds
t7502-commit.sh: test_must_fail doesn't work with inline environment variables
t7701-repack-unpack-unreachable.sh: check timestamp of unpacked objects
t/: Replace diff [-u|-U0] with test_cmp to allow compilation with old diff
t4116-apply-reverse.sh: use $TAR rather than tar
t3200,t7201: replace '!' with test_must_fail
t7502-commit.sh: rearrange test to make more portable
t/t4202-log.sh: add newline at end of file
Teach fsck and prune about the new location of temporary objects
perl/Makefile: update NO_PERL_MAKEMAKER section
t/t4202-log.sh: add newline at end of file
Teach fsck and prune that tmp_obj_ file names may not be 14 bytes long
perl/Makefile: handle paths with spaces in the NO_PERL_MAKEMAKER section
Makefile: set SHELL to value of SHELL_PATH
Makefile: add a target which will abort compilation with ancient shells
test-parse-options: use appropriate cast in length_callback
t5304-prune: adjust file mtime based on system time rather than file mtime
Brian Gernhardt (5):
Fix t4017-diff-retval for white-space from wc
Add test results directory to t/.gitignore
Documentation: Point to gitcli(7) from git(1)
Documentation: mention ORIG_HEAD in am, merge, and rebase
Documentation: Remove mentions of git-svnimport.
Brian Hetro (5):
builtin-log.c: Use 'git_config_string' to get 'format.subjectprefix' and 'format.suffix'
convert.c: Use 'git_config_string' to get 'smudge' and 'clean'
diff.c: Use 'git_config_string' to get 'diff.external'
http.c: Use 'git_config_string' to clean up SSL config.
builtin-commit.c: Use 'git_config_string' to get 'commit.template'
Cesar Eduardo Barros (2):
Documentation/git-submodule.txt: fix doubled word
Documentation/git-rev-parse.txt: update for new git-describe output format
Christian Couder (5):
help: check early if we have a command, if not try a documentation topic
Fix "config_error_nonbool" used with value instead of key
Fix "config_error_nonbool" used with value instead of key
merge-base: die with an error message if not passed a commit ref
documentation: user-manual: update "using-bisect" section
Christian Stimming (2):
git-gui: Update German translation
gitk: Updated German translation
Ciaran McCreesh (2):
Make git-add -i accept ranges like 7-
Make git-add -i accept ranges like 7-
Cristian Peraferrer (1):
Print errno upon failure to open the COMMIT_EDITMSG file
Dan McGee (1):
completion: add --graph to log command completion
Daniel Barkalow (2):
Only use GIT_CONFIG in "git config", not other programs
In perforce, RCS keywords are case-sensitive
David D. Kilzer (1):
Fix race condition in t9119-git-svn-info.sh
David Reiss (4):
Implement normalize_absolute_path
Fold test-absolute-path into test-path-utils
Add support for GIT_CEILING_DIRECTORIES
Eliminate an unnecessary chdir("..")
Dmitry Kakurin (1):
Fixed text file auto-detection: treat EOF character 032 at the end of file as printable
Dmitry Potapov (9):
fix update-hook-example to work with packed tag references
update-hook-example: optionally allow non-fast-forward
shrink git-shell by avoiding redundant dependencies
completion.bash: add 'skip' and 'run' to git-bisect
Fix buffer overflow in git-grep
Fix buffer overflow in git diff
Fix buffer overflow in prepare_attr_stack
git-svn: fix git svn info to work without arguments
correct access right for git-svn-dcommit test
Don Zickus (1):
git-apply: handle a patch that touches the same path more than once better
Eric Blake (1):
Makefile: building git in cygwin 1.7.0
Eric Hanchrow (2):
user-manual: typo and grammar fixes
Documentation: fix broken "linkgit" links
Eric Raible (4):
Documentation: tweak use case in "git stash save --keep-index"
completion: add branch options --contains --merged --no-merged
Teach lookup_prog not to select directories
bash completion: 'git apply' should use 'fix' not 'strip'
Eric Wong (6):
git-svn: don't sanitize remote names in config
t/lib-git-svn: fix SVN_HTTPD tests to work with "trash directory"
git-svn: properly set path for "info" command
t9119: conditionally re-enable test depending on svn(1) version
git-svn: add ability to specify --commit-url for dcommit
git-svn: wrap long lines in a few places
Fabian Emmes (2):
Testsuite: Unset CVS_SERVER
testsuite for cvs co -c
Francis Moreau (1):
git-bisect: fix wrong usage of read(1)
Frederik Schwarzer (1):
git-svn: typofix
Gerrit Pape (1):
git-svn.perl: workaround assertions in svn library 1.5.0
Giuseppe Bilotta (2):
diff: add ruby funcname pattern
diff: chapter and part in funcname for tex
Gustaf Hendeby (2):
gitattributes: Document built in hunk header patterns
Teach git diff about BibTeX head hunk patterns
Ian Katz (1):
tutorial: use prompt with user names in example, to clarify who is doing what
Ivan Stankovic (1):
Documentation: fix invalid reference to 'mybranch' in user manual
Jakub Narebski (5):
gitweb: Separate filling list of projects info
gitweb: Separate generating 'sort by' table header
t/README: Add 'Skipping Tests' section below 'Running Tests'
gitweb: Describe projects_index format in more detail
gitweb: More about how gitweb gets 'owner' of repository
Jan Krüger (2):
Documentation: fix formatting in git-svn
git-svn: make rebuild respect rewriteRoot option
Jeff King (18):
fix whitespace violations in test scripts
mask necessary whitespace policy violations in test scripts
avoid whitespace on empty line in automatic usage message
avoid trailing whitespace in zero-change diffstat lines
enable whitespace checking of test scripts
clone: create intermediate directories of destination repo
for-each-ref: implement missing tag values
clone: create intermediate directories of destination repo
improve for-each-ref test script
fetch: report local storage errors in status table
doc/rev-parse: clarify reflog vs --until for specifying revisions
fetch: give a hint to the user when local refs fail to update
Allow per-command pager config
make deleting a missing ref more quiet
avoid null SHA1 in oldest reflog
init: handle empty "template" parameter
Compact commit template message
init: handle empty "template" parameter
Jim Meyering (1):
git-cvsimport.perl: Print "UNKNOWN LINE..." on stderr, not stdout.
Jing Xue (1):
Add 'git-p4.allowSubmit' to git-p4
Jochen Voss (1):
avoid off-by-one error in run_upload_archive
Joey Hess (1):
fix git config example syntax
Johan Herland (4):
Incorporate fetched packs in future object traversal
Move pack_refs() and friends into libgit
Prepare testsuite for a "git clone" that packs refs
Teach "git clone" to pack refs
Johannes Schindelin (31):
Windows: always chmod(, 0666) before unlink().
clone: respect url.insteadOf setting in global configs
commit-tree: lift completely arbitrary limit of 16 parents
Allow git-apply to recount the lines in a hunk (AKA recountdiff)
clone: respect the settings in $HOME/.gitconfig and /etc/gitconfig
Add another fast-import example, this time for .zip files
Teach "git apply" to prepend a prefix with "--root="
git fetch-pack: do not complain about "no common commits" in an empty repo
git daemon: avoid calling syslog() from a signal handler
run_command(): respect GIT_TRACE
Allow cherry-picking root commits
Convert CR/LF to LF in tag signatures
Add pretty format %aN which gives the author name, respecting .mailmap
Move MERGE_RR from .git/rr-cache/ into .git/
git-gui: MERGE_RR lives in .git/ directly with newer Git versions
shortlog: support --pretty=format: option
Rename ".dotest/" to ".git/rebase" and ".dotest-merge" to "rebase-merge"
git fetch-pack: do not complain about "no common commits" in an empty repo
Rename .git/rebase to .git/rebase-apply
Rename path_list to string_list
Fix two leftovers from path_list->string_list
Ignore dirty submodule states in "git pull --rebase"
Add test to show that show-branch misses out the 8th column
sort_in_topological_order(): avoid setting a commit flag
builtin-commit: Two trivial style-cleanups
git daemon: avoid waking up too often
Avoid chdir() in list_commands_in_dir()
sort_in_topological_order(): avoid setting a commit flag
clone: Add an option to set up a mirror
clone --bare: Add ".git" suffix to the directory name to clone into
clone --mirror: avoid storing repeated tags
Johannes Sixt (52):
Add compat/regex.[ch] and compat/fnmatch.[ch].
Compile some programs only conditionally.
Add target architecture MinGW.
Windows: Use the Windows style PATH separator ';'.
setup.c: Prepare for Windows directory separators.
Windows: Treat Windows style path names.
Windows: Handle absolute paths in safe_create_leading_directories().
Windows: Strip ".exe" from the program name.
Windows: Implement a wrapper of the open() function.
Windows: A minimal implemention of getpwuid().
Windows: Work around misbehaved rename().
Make my_mktime() public and rename it to tm_to_time_t()
Windows: Implement gettimeofday().
Windows: Fix PRIuMAX definition.
Windows: Implement setitimer() and sigaction().
Windows: Wrap execve so that shell scripts can be invoked.
Windows: A pipe() replacement whose ends are not inherited to children.
Windows: Implement start_command().
Windows: A rudimentary poll() emulation.
Windows: Disambiguate DOS style paths from SSH URLs.
Windows: Implement asynchronous functions as threads.
Windows: Work around incompatible sort and find.
Windows: Implement wrappers for gethostbyname(), socket(), and connect().
Windows: Implement a custom spawnve().
Windows: Add a custom implementation for utime().
Windows: Use a customized struct stat that also has the st_blocks member.
Turn builtin_exec_path into a function.
Windows: Compute the fallback for exec_path from the program invocation.
Windows: Use a relative default template_dir and ETC_GITCONFIG
When installing, be prepared that template_dir may be relative.
Windows: Make the pager work.
Windows: Work around an oddity when a pipe with no reader is written to.
Windows: Make 'git help -a' work.
Windows: TMP and TEMP environment variables specify a temporary directory.
git-gui: Implement "Stage/Unstage Line"
t4127-apply-same-fn: Avoid sed -i
Provide fallback definitions of PRIu32 and PRIx32
t7600-merge: Use test_expect_failure to test option parsing
builtin-clone: rewrite guess_dir_name()
rebase -i: When an 'edit' stops, mention the commit
Makefile: Do not install a copy of 'git' in $(gitexecdir)
Makefile: Normalize $(bindir) and $(gitexecdir) before comparing
Record the command invocation path early
Fix relative built-in paths to be relative to the command invocation
Allow the built-in exec path to be relative to the command invocation path
Allow add_path() to add non-existent directories to the path
Windows: Make $(gitexecdir) relative
Windows: Make sure argv[0] has a path
Windows: Do not compile git-shell
git-gui: Fix "Stage/Unstage Line" with one line of context.
git-gui: "Stage Line": Treat independent changes in adjacent lines better
git-gui: Adapt discovery of oguilib to execdir 'libexec/git-core'
Jon Jensen (1):
Fix reference to Everyday Git, which is an HTML document and not a man page.
Jonathan Nieder (29):
Documentation: don't assume git-sh-setup and git-parse-remote are in PATH
Documentation: fix links to tutorials and other new manual pages
whitespace fix in Documentation/git-repack.txt
Documentation: complicate example of "man git-command"
git-daemon(1): don't assume git-daemon is in /usr/bin
Documentation: prepare to be consistent about "git-" versus "git "
Documentation: be consistent about "git-" versus "git "
Documentation formatting and cleanup
git-format-patch(1): fix stray \ in output
Documentation: fix gitlinks
manpages: fix bogus whitespace
git(1): add comma
git-commit(1): depersonalize description
Documentation: rewrap to prepare for "git-" vs "git " change
Documentation: more "git-" versus "git " changes
gitdiffcore(7): fix awkward wording
manpages: italicize command names in synopses
manpages: italicize command names
manpages: italicize git command names (which were in teletype font)
manpages: italicize gitk's name (where it was in teletype font)
manpages: italicize nongit command names (if they are in teletype font)
manpages: italicize git subcommand names (which were in teletype font)
manpages: use teletype font for sample command lines
fix usage string for git grep
git-diff(1): "--c" -> "--cc" typo fix
document that git-tag can tag more than heads
t6030 (bisect): work around Mac OS X "ls"
git-diff(1): "--c" -> "--cc" typo fix
Documentation: user-manual: "git commit -a" doesn't motivate .gitignore
João Abecasis (1):
git-svn: find-rev and rebase for SVN::Mirror repositories
Junio C Hamano (131):
revision traversal: --children option
rev-list --children
builtin-blame.c: move prepare_final() into a separate function.
builtin-blame.c: allow more than 16 parents
git-blame --reverse
diff -c/--cc: do not include uninteresting deletion before leading context
rerere: rerere_created_at() and has_resolution() abstraction
git-rerere: detect unparsable conflicts
rerere: remove dubious "tail_optimization"
t4200: fix rerere test
rerere.autoupdate
git-shell: accept "git foo" form
Prepare execv_git_cmd() for removal of builtins from the filesystem
pre-rebase hook update
Ship sample hooks with .sample suffix
Keep some git-* programs in $(bindir)
GIT 1.5.6.1
Allow "git-reset path" when unambiguous
Start draft release notes for 1.6.0
diff --check: do not discard error status upon seeing a good line
git-shell: accept "git foo" form
GIT 1.5.4.6
GIT 1.5.5.5
diff --check: explain why we do not care whether old side is binary
check_and_emit_line(): rename and refactor
checkdiff: pass diff_options to the callback
Teach "diff --check" about new blank lines at end
diff --check: detect leftover conflict markers
Update sample pre-commit hook to use "diff --check"
Document the double-dash "rev -- path" disambiguator
Per-ref reflog expiry configuration
Make default expiration period of reflog used for stash infinite
t9700: skip when Test::More is not available
Update draft release notes for 1.6.0
Introduce get_merge_bases_many()
Introduce reduce_heads()
Start draft release notes for 1.5.6.2
Update draft release notes for 1.6.0
apply --root: thinkofix.
Refactor "tracking statistics" code used by "git checkout"
git-status: show the remote tracking statistics
git-branch -v: show the remote tracking statistics
fast-export --export-marks: fix off by one error
stat_tracking_info(): clear object flags used during counting
Work around gcc warnings from curl headers
Fix executable bits in t/ scripts
GIT 1.5.6.2
attribute documentation: keep EXAMPLE at end
clone -q: honor "quiet" option over native transports.
branch -r -v: do not spit out garbage
git-apply --directory: make --root more similar to GNU diff
mailinfo: feed the correct line length to decode_transfer_encoding()
Update draft release notes for 1.6.0
Teach "am" and "rebase" to mark the original position with ORIG_HEAD
Tone down warning about GNU Interactive Tools
Documentation: update sections on naming revisions and revision ranges
Start preparing release notes for 1.5.6.3
branch --contains: default to HEAD
branch --merged/--no-merged: allow specifying arbitrary commit
apply: fix copy/rename breakage
Teach merge.log to "git-merge" again
t0004: fix timing bug
GIT 1.5.6.3
Update draft release notes for 1.6.0
reduce_heads(): protect from duplicate input
git-rebase: report checkout failure
tutorial: clarify "pull" is "fetch merge"
Update draft release notes to 1.6.0
t/aggregate-results: whitespace fix
Start preparing 1.5.6.4 release notes
Update draft release notes for 1.6.0
read-cache.c: typofix
mailinfo: off-by-one fix for [PATCH (foobar)] removal from Subject: line
rerere.autoupdate: change the message when autoupdate is in effect
builtin-remote.c: fix earlier "skip_prefix()" conversion
rev-list: honor --quiet option
http-fetch: do not SEGV after fetching a bad pack idx file
GIT 1.5.6.4
t9001 (send-email): Do not use hardcoded /bin/sh in test
.mailmap update
Getting closer to 1.6.0-rc0
builtin-add.c: restructure the code for maintainability
git-add --all: add all files
git-add --all: tests
git-add --all: documentation
refresh-index: fix bitmask assignment
Link shell with compat layer functions
Move read_in_full() and write_in_full() to wrapper.c
"needs update" considered harmful
Update my e-mail address
Revert "make git-status use a pager"
tests: do not rely on external "patch"
stash save: fix parameter handling
builtin-branch.c: remove unused code in append_ref() callback function
builtin-branch.c: optimize --merged and --no-merged
Documentation: clarify diff --cc
ignore non-existent refs in dwim_log()
tests: propagate $(TAR) down from the toplevel Makefile
Makefile: fix shell quoting
Documentation: clarify how to disable elements in core.whitespace
make sure parsed wildcard refspec ends with slash
GIT 1.6.0-rc1
Allow building without any git installed
Allow installing in the traditional way
ls-tree documentation: enhance notes on subdirectory and pathspec behaviour
Documentation: clarify what is shown in "git-ls-files -s" output
t7001: fix "git mv" test
Teach gitlinks to ie_modified() and ce_modified_check_fs()
Fix merge name generation in "merge in C"
Fix test-parse-options "integer" test
Teach --find-copies-harder to "git blame"
make sure parsed wildcard refspec ends with slash
Documentation: clarify diff --cc
Update my e-mail address
Start 1.5.6.5 RelNotes to describe accumulated fixes
builtin-name-rev.c: split deeply nested part from the main function
RelNotes 1.5.6.5 updates
fix diff-tree --stdin documentation
Files given on the command line are relative to $cwd
GIT 1.5.6.5
GIT 1.6.0-rc2
asciidoc markup fixes
GIT-VERSION-GEN: mark the version 'dirty' only if there are modified files
mailinfo: fix MIME multi-part message boundary handling
Update draft RelNotes for 1.6.0
Fix deleting reflog entries from HEAD reflog
Re-fix rev-list-options documentation
diff --check: do not unconditionally complain about trailing empty lines
Do not talk about "diff" in rev-list documentation.
GIT 1.6.0-rc3
GIT 1.6.0
Karl Hasselström (2):
Clean up builtin-update-ref's option parsing
Make old sha1 optional with git update-ref -d
Kevin Ballard (3):
git-send-email: Accept fifos as well as files
format-patch: Produce better output with --inline or --attach
Fix escaping of glob special characters in pathspecs
Lars Hjemli (3):
builtin-branch: remove duplicated code
builtin-branch: factor out merge_filter matching
builtin-branch: fix -v for --[no-]merged
Lars Noschinski (4):
git-cvsserver: fix call to nonexistant cleanupWorkDir()
cvsserver: Add support for packed refs
cvsserver: Add cvs co -c support
cvsserver: Add testsuite for packed refs
Lea Wiemann (6):
test-lib.sh: add --long-tests option
t/test-lib.sh: add test_external and test_external_without_stderr
Git.pm: add test suite
gitweb: standarize HTTP status codes
test-lib.sh: show git init output when in verbose mode
GIT-VERSION-GEN: do not fail if a 'HEAD' file exists in the working copy
Lee Marlow (15):
bash completion: Add long options for 'git rm'
bash completion: Add completion for 'git help'
bash completion: remove unused function _git_diff_tree
bash completion: Add more long options for 'git log'
bash completion: Add completion for 'git grep'
bash completion: Add completion for 'git clone'
bash completion: Add completion for 'git clean'
bash completion: Add completion for 'git init'
bash completion: Add completion for 'git revert'
bash completion: More completions for 'git stash'
bash completion: Add completion for 'git archive'
bash completion: Add completion for 'git ls-files'
bash completion: Add completion for 'git mv'
bash completion: Add completion for 'git mergetool'
bash completion: Add '--merge' long option for 'git log'
Linus Torvalds (8):
Split up default "core" config parsing into helper routine
Split up default "user" config parsing into helper routine
Split up default "i18n" and "branch" config parsing into helper routines
Add config option to enable 'fsync()' of object files
racy-git: an empty blob has a fixed object name
Make git_dir a path relative to work_tree in setup_work_tree()
Shrink the git binary a bit by avoiding unnecessary inline functions
diff.renamelimit is a basic diff configuration
Lukas Sandström (6):
Add a helper script to send patches with Mozilla Thunderbird
git-mailinfo: document the -n option
Make some strbuf_*() struct strbuf arguments const.
Add some useful functions for strbuf manipulation.
git-mailinfo: Fix getting the subject from the in-body [PATCH] line
git-mailinfo: use strbuf's instead of fixed buffers
Marcus Griep (7):
Fix multi-glob assertion in git-svn
git-svn: Allow deep branch names by supporting multi-globs
Git.pm: Add faculties to allow temp files to be cached
git-svn: Make it incrementally faster by minimizing temp files
git-svn: Reduce temp file usage when dealing with non-links
bash-completion: Add non-command git help files to bash-completion
Git.pm: Make File::Spec and File::Temp requirement lazy
Marius Storm-Olsen (4):
Add an optional argument to commit/status -u|--untracked-files option
Add argument 'no' commit/status option -u|--untracked-files
Add configuration option for default untracked files mode
Windows: Add a new lstat and fstat implementation based on Win32 API.
Mark Levedahl (4):
install-doc-quick - use git --exec-path to find git-sh-setup
git-submodule - Fix bugs in adding an existing repo as a module
git-submodule - make "submodule add" more strict, and document it
git-submodule - register submodule URL if adding in place
Matt McCutchen (1):
git format-patch documentation: clarify what --cover-letter does
Matthew Ogilvie (1):
Documentation cvs: Clarify when a bare repository is needed
Michele Ballabio (6):
parse-options.c: fix documentation syntax of optional arguments
t9301-fast-export.sh: Remove debug line
builtin-merge.c: Fix option parsing
builtin-push.c: Cleanup - use OPT_BIT() and remove some variables
git-gui: update po/it.po
git-gui: add a part about format strings in po/README
Mikael Magnusson (3):
Fix grammar in git-rev-parse(1).
git-gui: Update swedish translation.
gitk: Update swedish translation.
Mike Hommey (4):
Catch failures from t5540-http-push
Fix http-push test
Skip t5540-http-push test when USE_CURL_MULTI is undefined
Avoid apache complaining about lack of server's FQDN
Mike Pape (1):
We need to check for msys as well as Windows in add--interactive.
Mike Ralphson (2):
Documentation: typos / spelling fixes in older RelNotes
Documentation: typos / spelling fixes
Miklos Vajna (31):
A simple script to parse the results from the testcases
Move split_cmdline() to alias.c
Move commit_list_count() to commit.c
Move parse-options's skip_prefix() to git-compat-util.h
Add new test to ensure git-merge handles pull.twohead and pull.octopus
Move read_cache_unmerged() to read-cache.c
git-fmt-merge-msg: make it usable from other builtins
Introduce get_octopus_merge_bases() in commit.c
Add new test to ensure git-merge handles more than 25 refs.
Add new test case to ensure git-merge reduces octopus parents when possible
Retire 'stupid' merge strategy
INSTALL: Update section about git-frotz form.
hg-to-git: avoid raising a string exception
hg-to-git: abort if the project directory is not a hg repo
hg-to-git: rewrite "git-frotz" to "git frotz"
hg-to-git: use git init instead of git init-db
Add new test case to ensure git-merge prepends the custom merge message
git-commit-tree: make it usable from other builtins
Fix t7601-merge-pull-config.sh on AIX
Build in merge
t0001-init.sh: change confusing directory name
t1007-hash-object.sh: use quotes for the test description
git-bisect: use dash-less form on git bisect log
make remove-dashes: apply to scripts and programs as well, not just to builtins
t6021: add a new test for git-merge-resolve
Add a new test for git-merge-resolve
Teach 'git merge' that some merge strategies no longer exist
builtin-merge: give a proper error message for invalid strategies in config
t7601: extend the 'merge picks up the best result' test
Documentation: document the pager.* configuration setting
t9300: replace '!' with test_must_fail
Nanako Shiraishi (8):
environment.c: remove unused function
config.c: make git_env_bool() static
gitcli: Document meaning of --cached and --index
cache-tree.c: make cache_tree_find() static
builtin-describe.c: make a global variable "pattern" static
parse-options.c: make check_typos() static
git am --abort
git-gui: update Japanese translation
Nguyễn Thái Ngọc Duy (2):
Move all dashed-form commands to libexecdir
Fix typo in comments of longest_ancestor_length()
Nicolas Pitre (11):
call init_pack_revindex() lazily
implement some resilience against pack corruptions
test case for pack resilience against corruptions
refactor pack structure allocation
optimize verify-pack a bit
move show_pack_info() where it belongs
verify-pack: check packed object CRC when using index version 2
verify-pack: test for detection of index v2 object CRC mismatch
repack.usedeltabaseoffset config option now defaults to "true"
pack.indexversion config option now defaults to 2
restore legacy behavior for read_sha1_file()
Nikolaj Schumacher (1):
Don't cut off last character of commit descriptions.
Nikolaus Schulz (1):
Documentation: be precise about which date --pretty uses
Olivier Marin (9):
Documentation: remove {show,whatchanged}.difftree config options
show_stats(): fix stats width calculation
builtin-rerere: more carefully find conflict markers
builtin-rm: fix index lock file path
git-am: remove dash from help message
parse-options: fix segmentation fault when a required value is missing
git am --skip: clean the index while preserving local changes
update test case to protect am --skip behaviour
builtin-verify-tag: fix -v option parsing
P. Christeas (1):
svnimport: newer libsvn wants us to ask for the root with "", not "/"
Patrick Higgins (2):
Remove the use of '--' in merge program invocation
Workaround for AIX mkstemp()
Pavel Roskin (1):
t9600: allow testing with cvsps 2.2, including beta versions
Peter Harris (1):
Add ANSI control code emulation for the Windows console
Peter Valdemar Mørch (1):
send-email: find body-encoding correctly
Petr Baudis (14):
Git.pm: Add remote_refs() git-ls-remote frontend
Fix backwards-incompatible handling of core.sharedRepository
Documentation/git-cherry-pick.txt et al.: Fix misleading -n description
Documentation/git-submodule.txt: Add Description section
Documentation/RelNotes-1.6.0.txt: Expand on the incompatible packfiles
Documentation/git-submodule.txt: Further clarify the description
Documentation: How to ignore local changes in tracked files
Documentation/git-merge.txt: Partial rewrite of How Merge Works
git-filter-branch.sh: Allow running in bare repositories
Documentation/git-filter-branch: teach "rm" instead of "update-index --remove"
git-mv: Remove dead code branch
git-mv: Keep moved index entries inact
Fail properly when cloning from invalid HTTP URL
Adjust for the new way of enabling the default post-update hook
Philippe Bruhat (1):
mailinfo: better parse email adresses containg parentheses
Pierre Habouzit (19):
parse-opt: have parse_options_{start,end}.
parse-opt: Export a non NORETURN usage dumper.
parse-opt: create parse_options_step.
parse-opt: do not print errors on unknown options, return -2 intead.
parse-opt: fake short strings for callers to believe in.
parse-opt: add PARSE_OPT_KEEP_ARGV0 parser option.
revisions: split handle_revision_opt() from setup_revisions()
git-blame: migrate to incremental parse-option [1/2]
git-blame: migrate to incremental parse-option [2/2]
parse-options: add PARSE_OPT_LASTARG_DEFAULT flag
git-blame: fix lapsus
git-shortlog: migrate to parse-options partially.
revisions: refactor handle_revision_opt into parse_revision_opt.
builtin-merge: add missing structure initialization
git-submodule: move ill placed shift.
git-checkout: fix command line parsing.
git-checkout: improve error messages, detect ambiguities.
Allow "non-option" revision options in parse_option-enabled commands
git-submodule: move ill placed shift.
Pieter de Bie (4):
builtin-fast-export: Add importing and exporting of revision marks
git-name-rev: allow --name-only in combination with --stdin
builtin-rm: Add a --force flag
reflog test: add more tests for 'reflog delete'
Rafael Garcia-Suarez (1):
gitweb: remove git_blame and rename git_blame2 to git_blame
Ramsay Allan Jones (4):
Fix some warnings (on cygwin) to allow -Werror
t9113-*.sh: provide user feedback when test skipped
t9100-git-svn-basic.sh: Fix determination of utf-8 locale
git-request-pull: replace call to deprecated peek-remote
René Scharfe (16):
Teach new attribute 'export-ignore' to git-archive
archive: remove args member from struct archiver
add context pointer to read_tree_recursive()
archive: add baselen member to struct archiver_args
archive: centralize archive entry writing
archive: unify file attribute handling
archive: remove extra arguments parsing code
archive: make zip compression level independent from core git
archive: remove unused headers
archive: add write_archive()
archive: move parameter parsing code to archive.c
archive: define MAX_ARGS where it's needed
archive: declare struct archiver where it's needed
archive: allow --exec and --remote without equal sign
archive: allow --exec and --remote without equal sign
git-name-rev: don't use printf without format
Richard Quirk (1):
git-gui: Fix accidental staged state toggle when clicking top pixel row
Robert Blum (1):
git-p4: chdir now properly sets PWD environment variable in msysGit
Robert Shearman (1):
git-send-email: Fix authenticating on some servers when using TLS.
SZEDER Gábor (5):
stash: introduce 'stash save --keep-index' option
bash: offer only paths after '--'
checkout: mention '--' in the docs
bash: offer only paths after '--' for 'git checkout'
bash: remove redundant check for 'git stash apply' options
Shawn O. Pearce (18):
Correct documentation for git-push --mirror
Fix describe --tags --long so it does not segfault
Remove unnecessary pack-*.keep file after successful git-clone
Correct pack memory leak causing git gc to try to exceed ulimit
bash completion: Improve responsiveness of git-log completion
bash completion: Don't offer "a.." as a completion for "a."
bash completion: Append space after file names have been completed
bash completion: Resolve git show ref:path losing ref: portion
bash completion: Remove dashed command completion support
index-pack: Refactor base arguments of resolve_delta into a struct
index-pack: Chain the struct base_data on the stack for traversal
index-pack: Track the object_entry that creates each base_data
index-pack: Honor core.deltaBaseCacheLimit when resolving deltas
git-gui: Correct 'Visualize Branches' on Mac OS X to start gitk
fsck: Don't require tmp_obj_ file names are 14 bytes in length
git-gui: Fix gitk search in $PATH to work on Windows
git-gui: Update git-gui.pot for 0.11 nearing release
git-gui 0.11
Soeren Finster (1):
git-gui: Exit shortcut in MacOSX repaired
Steffen Prohaska (11):
Windows: Fix ntohl() related warnings about printf formatting
compat/pread.c: Add a forward declaration to fix a warning
Move code interpreting path relative to exec-dir to new function system_path()
help.c: Add support for htmldir relative to git_exec_path()
help (Windows): Display HTML in default browser using Windows' shell API
Refactor, adding prepare_git_cmd(const char **argv)
run-command (Windows): Run dashless "git "
git-gui: Correct installation of library to be $prefix/share
git-gui (Windows): Switch to relative discovery of oguilib
git-gui (Windows): Change wrapper to execdir 'libexec/git-core'
Modify mingw_main() workaround to avoid link errors
Stephan Beyer (28):
api-builtin.txt: update and fix typo
t3404: stricter tests for git-rebase--interactive
git-rebase.sh: Add check if rebase is in progress
api-builtin.txt: update and fix typo
api-parse-options.txt: Introduce documentation for parse options API
Extend parse-options test suite
rerere: Separate libgit and builtin functions
git-am: Do not exit silently if committer is unset
t/test-lib.sh: exit with small negagive int is ok with test_must_fail
t/: Use "test_must_fail git" instead of "! git"
Make usage strings dash-less
git-am/git-mailsplit: correct synopsis for reading from stdin
t3404: test two "preserve merges with -p" cases
Make rebase--interactive use OPTIONS_SPEC
rebase-i: keep old parents when preserving merges
api-run-command.txt: typofix
Link git-shell only to a subset of libgit.a
git-am: Add colon before the subject that is printed out as being applied
am --abort: Add to bash-completion and mention in git-rerere documentation
Make non-static functions, that may be static, static
Move launch_editor() from builtin-tag.c to editor.c
editor.c: Libify launch_editor()
git-am: Mention --abort in usage string part of OPTIONS_SPEC
git-reset: Let -q hush "locally modified" messages
builtin-revert.c: typofix
git-am: ignore --binary option
git-stash: improve synopsis in help and manual page
Improve error output of git-rebase
Stephen R. van den Berg (1):
git-daemon: SysV needs the signal handler reinstated.
Steve Haslam (3):
Propagate -u/--upload-pack option of "git clone" to transport.
Remove references to git-fetch-pack from "git clone" documentation.
Propagate -u/--upload-pack option of "git clone" to transport.
Steven Grimm (1):
Optimize sha1_object_info for loose objects, not concurrent repacks
SungHyun Nam (1):
t/Makefile: use specified shell when running aggregation script
Sverre Hvammen Johansen (1):
reduce_heads(): thinkofix
Sverre Rabbelier (2):
Modify test-lib.sh to output stats to t/test-results/*
Hook up the result aggregation in the test makefile.
Ted Percival (1):
Don't use dash commands (git-foo) in tutorial-2
Teemu Likonen (3):
bash: Add more option completions for 'git log'
Add target "install-html" the the top level Makefile
bash: Add long option completion for 'git send-email'
Thomas Rast (18):
git-send-email: add support for TLS via Net::SMTP::SSL
git-send-email: prevent undefined variable warnings if no encryption is set
Fix 'git show' on signed tag of signed tag of commit
git-add--interactive: replace hunk recounting with apply --recount
git-add--interactive: remove hunk coalescing
git-add--interactive: manual hunk editing mode
git-send-email: Do not attempt to STARTTLS more than once
Fix apply --recount handling of no-EOL line
git-completion.bash: provide completion for 'show-branch'
bash completion: Add long options for 'git describe'
Documentation: commit-tree: remove 16 parents restriction
Documentation: filter-branch: document how to filter all refs
filter-branch: be more helpful when an annotated tag changes
Documentation: rev-list-options: Fix -g paragraph formatting
Documentation: rev-list-options: Fix a typo
Documentation: rev-list-options: Rewrite simplification descriptions for clarity
rebase -i -p: handle index and workdir correctly
rebase -i -p: fix parent rewriting
Todd Zullinger (1):
Replace uses of "git-var" with "git var" [Less]
Posted 16 days ago by Marius Vollmer
Hi,
I decided to finally learn Git and I did that by writing a Emacs
interface for it. It's good enough now to release it to the public:
http://zagadka.vm.bytemark.co.uk/magit/
You'll find the source, the manual, and a
... [More]
Debian package there.
I hope you find Magit interesting and useful. Feedback is of course
very welcome! [Less]
Posted 17 days ago by Junio C Hamano
The last rc before the final, 1.6.0-rc3, can be found at the usual places:
http://www.kernel.org/pub/software/scm/git/
git-1.6.0.rc3.tar.{gz,bz2} (source tarball)
git-htmldocs-1.6.0.rc3.tar.{gz,bz2} (preformatted
... [More]
docs)
git-manpages-1.6.0.rc3.tar.{gz,bz2} (preformatted docs)
The RPM binary packages for a few architectures are also provided
as courtesy.
testing/git-*-1.6.0.rc3-1.fc9.$arch.rpm (RPM)
Hopefully the real 1.6.0 will appear over the weekend.
----------------------------------------------------------------
Changes since v1.6.0-rc2 are as follows:
Brandon Casey (2):
Makefile: set SHELL to value of SHELL_PATH
Makefile: add a target which will abort compilation with ancient shells
Eric Wong (2):
git-svn: add ability to specify --commit-url for dcommit
git-svn: wrap long lines in a few places
Francis Moreau (1):
git-bisect: fix wrong usage of read(1)
Gustaf Hendeby (2):
gitattributes: Document built in hunk header patterns
Teach git diff about BibTeX head hunk patterns
Ivan Stankovic (1):
Documentation: fix invalid reference to 'mybranch' in user manual
Johannes Schindelin (1):
clone --mirror: avoid storing repeated tags
Jonathan Nieder (1):
Documentation: user-manual: "git commit -a" doesn't motivate .gitignore
Junio C Hamano (9):
asciidoc markup fixes
GIT-VERSION-GEN: mark the version 'dirty' only if there are modified files
mailinfo: fix MIME multi-part message boundary handling
Update draft RelNotes for 1.6.0
Fix deleting reflog entries from HEAD reflog
Re-fix rev-list-options documentation
diff --check: do not unconditionally complain about trailing empty lines
Do not talk about "diff" in rev-list documentation.
GIT 1.6.0-rc3
Marcus Griep (5):
Fix multi-glob assertion in git-svn
git-svn: Allow deep branch names by supporting multi-globs
Git.pm: Add faculties to allow temp files to be cached
git-svn: Make it incrementally faster by minimizing temp files
git-svn: Reduce temp file usage when dealing with non-links
Nguyễn Thái Ngọc Duy (1):
Fix typo in comments of longest_ancestor_length()
Petr Baudis (2):
Fail properly when cloning from invalid HTTP URL
Adjust for the new way of enabling the default post-update hook
Pieter de Bie (2):
builtin-rm: Add a --force flag
reflog test: add more tests for 'reflog delete'
SZEDER Gábor (1):
bash: remove redundant check for 'git stash apply' options
Stephen R. van den Berg (1):
git-daemon: SysV needs the signal handler reinstated.
Thomas Rast (6):
Documentation: commit-tree: remove 16 parents restriction
Documentation: filter-branch: document how to filter all refs
filter-branch: be more helpful when an annotated tag changes
Documentation: rev-list-options: Fix -g paragraph formatting
Documentation: rev-list-options: Fix a typo
Documentation: rev-list-options: Rewrite simplification descriptions for clarity [Less]
Posted 18 days ago by Petr Baudis
Hi!
This is v0.2 of TopGit; we are steady on our way to v1.0! ;-)
TopGit is meant as a fresh start in the steps of StGIT, quilt-in-git
and others, of course in an attempt to Get It Right this time around.
TopGit is
... [More]
absolutely minimal porcelain layer that will manage your
patch queue for you using topic branches, one patch per branch,
never rewriting the history in order to enable fully distributed
workflow. You can get TopGit at
http://repo.or.cz/w/topgit.git
and read up on its design, usage and implementation at:
http://repo.or.cz/w/topgit.git?a=blob;f=README
This version features changed usage of tg create, new tg export command
that can export your patch queue either to a Git branch or Quilt series,
a huge amount of bugfixes, and improved documentation infrastructure.
Thanks go to Bert Wesarg, Russel Steicke and Antonio Ospite for their
patches - please keep them coming - and to martin f. krafft for
the testing, ideas and presentation to fellow Debian packagers.
Antonio Ospite (1):
tg.sh: Add -h, --help aliases for the help command
Bert Wesarg (7):
tg-create.sh: fix help string
tg-create.sh: Introduce topgit.subjectprefix config option
tg-info: pretty print dependencies
tg.sh: Runtime tg-* command check
tg.sh: Check for read permissions of help files
Makefile: mkdir $(bindir)
tg.sh: it's info/attributes not info/gitattributes
Petr Baudis (33):
README: Fix synopsis of resuming tg create
README: Two TODOs for tg summary
README: TODO for tg depend
README: TODO for tg tidy
tg.sh: setup_hook(): Test existence instead of -x
tg-info.sh: Fix list of >1 dependencies
tg-patch.sh: Bring deplist format in sync with tg info
tg-info.sh: Show missing dependencies (needs_update() enhancement)
tg-update.sh: Abort on missing dependencies
needs_update(): Return non-zero if update is required
tg-summary.sh: Mark branches with missing dependencies by '\!'
tg-summary.sh: Fix nonempty indicator misalignment
tg-summary.sh: Clean up printing status columns
README: TODO tg tidy -> tg collapse
tg-create.sh: Change usage (-d -> arguments)
README: Mark future tg patch features as TODO clearly
tg-create.sh: Introduce topgit.{to,cc,bcc} config options
needs_update(): Fix $missing_deps passing
tg-create.sh: Pre-fill [PATCH] line with patch name
create-help.sh: Fix 'tg update' generated help text
needs_update(): Split to recurse_deps() and branch_needs_update() helpers
recurse_deps(): _-prefix $depsfile
measure_branch(): Use _bname instead of _name local variable
branch_needs_update(): Fox branch_contains call: $1 -> $_name
recurse_deps(): Call itself, not needs_update(), recursively
tg-export: New command for cleaning up history
tg.sh: Avoid use of non-SUS 'echo -e'
README: tg collapse is already implemented (as tg export)
tg export: Really remove TopGit metadata files when exporting
tg update: Do not use ${:n:m} substitution (bash extension)
tg export: Support --quilt for exporting to quilt series
tg export: Print progress messages _before_ the action
TopGit-0.2
Russell Steicke (3):
Check for pre-commit hook existence.
Make "tg help cmd" print cmd help
Pretty print the help creation commands in Makefile.
Have fun,
--
Petr "Pasky" Baudis
The next generation of interesting software will be done
on the Macintosh, not the IBM PC. -- Bill Gates [Less]
Posted 23 days ago by Junio C Hamano
GIT 1.6.0-rc2 is the second (or should we call it the third?) preview of
the upcoming release. It is available at the usual places:
http://www.kernel.org/pub/software/scm/git/
git-1.6.0-rc2.tar.{gz,bz2} (source
... [More]
tarball)
git-htmldocs-1.6.0-rc2.tar.{gz,bz2} (preformatted docs)
git-manpages-1.6.0-rc2.tar.{gz,bz2} (preformatted docs)
The RPM binary packages for a few architectures are also provided
as courtesy.
testing/RPMS/$arch/*-1.6.0.rc2-1.fc9.$arch.rpm (RPM)
----------------------------------------------------------------
Changes since v1.6.0-rc1 are as follows:
Abhijit Menon-Sen (7):
`git submodule add` now requires a
Make it clear that push can take multiple refspecs
Make the DESCRIPTION match ... items in the SYNOPSIS
Git.pm: localise $? in command_close_bidi_pipe()
Fix hash slice syntax error
Fix typo in perl/Git.pm
Fix typos in INSTALL
Alex Riesen (1):
Make use of stat.ctime configurable
Alexander Gavrilov (9):
git-gui: Fix the Remote menu separator.
git-gui: Preserve scroll position on reshow_diff.
Support copy and rename detection in fast-export.
gitk: Kill back-end processes on window close
gitk: Arrange to kill diff-files & diff-index on quit
gitk: On Windows, use a Cygwin-specific flag for kill
gitk: Fixed broken exception handling in diff
gitk: Fixed automatic row selection during load
gitk: Fallback to selecting the head commit upon load
Anders Melchiorsen (4):
Advertise the ability to abort a commit
Documentation: fix diff.external example
Flush output in start_async
Add output flushing before fork()
Avery Pennarun (2):
Teach "git diff -p" Pascal/Delphi funcname pattern
git-svn: Abort with an error if 'fetch' parameter is invalid.
Brandon Casey (3):
t/t4202-log.sh: add newline at end of file
Teach fsck and prune that tmp_obj_ file names may not be 14 bytes long
perl/Makefile: handle paths with spaces in the NO_PERL_MAKEMAKER section
Brian Gernhardt (1):
Documentation: Remove mentions of git-svnimport.
Cesar Eduardo Barros (1):
Documentation/git-rev-parse.txt: update for new git-describe output format
Christian Couder (2):
merge-base: die with an error message if not passed a commit ref
documentation: user-manual: update "using-bisect" section
Christian Stimming (2):
git-gui: Update German translation
gitk: Updated German translation
Ciaran McCreesh (1):
Make git-add -i accept ranges like 7-
David D. Kilzer (1):
Fix race condition in t9119-git-svn-info.sh
Dmitry Potapov (1):
correct access right for git-svn-dcommit test
Eric Wong (2):
git-svn: properly set path for "info" command
t9119: conditionally re-enable test depending on svn(1) version
Giuseppe Bilotta (2):
diff: add ruby funcname pattern
diff: chapter and part in funcname for tex
Jeff King (3):
init: handle empty "template" parameter
Compact commit template message
init: handle empty "template" parameter
Jim Meyering (1):
git-cvsimport.perl: Print "UNKNOWN LINE..." on stderr, not stdout.
Johannes Schindelin (3):
sort_in_topological_order(): avoid setting a commit flag
clone: Add an option to set up a mirror
clone --bare: Add ".git" suffix to the directory name to clone into
Johannes Sixt (1):
git-gui: Adapt discovery of oguilib to execdir 'libexec/git-core'
Jon Jensen (1):
Fix reference to Everyday Git, which is an HTML document and not a man page.
Jonathan Nieder (1):
git-diff(1): "--c" -> "--cc" typo fix
Junio C Hamano (19):
Allow building without any git installed
Allow installing in the traditional way
ls-tree documentation: enhance notes on subdirectory and pathspec behaviour
Documentation: clarify what is shown in "git-ls-files -s" output
t7001: fix "git mv" test
Teach gitlinks to ie_modified() and ce_modified_check_fs()
Fix merge name generation in "merge in C"
Fix test-parse-options "integer" test
Teach --find-copies-harder to "git blame"
make sure parsed wildcard refspec ends with slash
Documentation: clarify diff --cc
Update my e-mail address
Start 1.5.6.5 RelNotes to describe accumulated fixes
builtin-name-rev.c: split deeply nested part from the main function
RelNotes 1.5.6.5 updates
fix diff-tree --stdin documentation
Files given on the command line are relative to $cwd
GIT 1.5.6.5
GIT 1.6.0-rc2
Kevin Ballard (1):
format-patch: Produce better output with --inline or --attach
Lee Marlow (11):
bash completion: remove unused function _git_diff_tree
bash completion: Add more long options for 'git log'
bash completion: Add completion for 'git grep'
bash completion: Add completion for 'git clone'
bash completion: Add completion for 'git clean'
bash completion: Add completion for 'git init'
bash completion: Add completion for 'git revert'
bash completion: More completions for 'git stash'
bash completion: Add completion for 'git archive'
bash completion: Add completion for 'git ls-files'
bash completion: Add completion for 'git mv'
Linus Torvalds (1):
diff.renamelimit is a basic diff configuration
Michele Ballabio (2):
git-gui: update po/it.po
git-gui: add a part about format strings in po/README
Mikael Magnusson (2):
git-gui: Update swedish translation.
gitk: Update swedish translation.
Mike Ralphson (2):
Documentation: typos / spelling fixes in older RelNotes
Documentation: typos / spelling fixes
Nanako Shiraishi (1):
git-gui: update Japanese translation
Olivier Marin (1):
builtin-verify-tag: fix -v option parsing
Pierre Habouzit (2):
Allow "non-option" revision options in parse_option-enabled commands
git-submodule: move ill placed shift.
Pieter de Bie (1):
git-name-rev: allow --name-only in combination with --stdin
René Scharfe (2):
archive: allow --exec and --remote without equal sign
git-name-rev: don't use printf without format
Shawn O. Pearce (2):
git-gui: Fix gitk search in $PATH to work on Windows
git-gui: Update git-gui.pot for 0.11 nearing release
Steffen Prohaska (6):
Refactor, adding prepare_git_cmd(const char **argv)
run-command (Windows): Run dashless "git "
git-gui: Correct installation of library to be $prefix/share
git-gui (Windows): Switch to relative discovery of oguilib
git-gui (Windows): Change wrapper to execdir 'libexec/git-core'
Modify mingw_main() workaround to avoid link errors
Stephan Beyer (1):
builtin-revert.c: typofix
Steve Haslam (1):
Propagate -u/--upload-pack option of "git clone" to transport.
Steven Grimm (1):
Optimize sha1_object_info for loose objects, not concurrent repacks
Todd Zullinger (1):
Replace uses of "git-var" with "git var"
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
Posted 23 days ago by Junio C Hamano
The latest maintenance release GIT 1.5.6.5 is available at the
usual places:
http://www.kernel.org/pub/software/scm/git/
git-1.5.6.5.tar.{gz,bz2} (source tarball)
git-htmldocs-1.5.6.5.tar.{gz,bz2} (preformatted
... [More]
docs)
git-manpages-1.5.6.5.tar.{gz,bz2} (preformatted docs)
The RPM binary packages for a few architectures are also provided
as courtesy.
RPMS/$arch/git-*-1.5.6.5-1.fc9.$arch.rpm (RPM)
GIT v1.5.6.5 Release Notes
==========================
Fixes since v1.5.6.4
--------------------
* "git cvsimport" used to spit out "UNKNOWN LINE..." diagnostics to stdout.
* "git commit -F filename" and "git tag -F filename" run from subdirectories
did not read the right file.
* "git init --template=" with blank "template" parameter linked files
under root directories to .git, which was a total nonsense. Instead, it
means "I do not want to use anything from the template directory".
* "git diff-tree" and other diff plumbing ignored diff.renamelimit configuration
variable when the user explicitly asked for rename detection.
* "git name-rev --name-only" did not work when "--stdin" option was in effect.
* "git show-branch" mishandled its 8th branch.
* Addition of "git update-index --ignore-submodules" that happened during
1.5.6 cycle broke "git update-index --ignore-missing".
* "git send-email" did not parse charset from an existing Content-type:
header properly.
Contains other various documentation fixes.
----------------------------------------------------------------
Changes since v1.5.6.4 are as follows:
Anders Melchiorsen (1):
Documentation: fix diff.external example
Björn Steinbrink (1):
index-pack.c: correctly initialize appended objects
Brandon Casey (1):
t/t4202-log.sh: add newline at end of file
Ciaran McCreesh (1):
Make git-add -i accept ranges like 7-
Jeff King (1):
init: handle empty "template" parameter
Jim Meyering (1):
git-cvsimport.perl: Print "UNKNOWN LINE..." on stderr, not stdout.
Johannes Schindelin (1):
sort_in_topological_order(): avoid setting a commit flag
Jonathan Nieder (2):
fix usage string for git grep
git-diff(1): "--c" -> "--cc" typo fix
Junio C Hamano (12):
refresh-index: fix bitmask assignment
tests: propagate $(TAR) down from the toplevel Makefile
Makefile: fix shell quoting
make sure parsed wildcard refspec ends with slash
Documentation: clarify diff --cc
Update my e-mail address
Start 1.5.6.5 RelNotes to describe accumulated fixes
builtin-name-rev.c: split deeply nested part from the main function
RelNotes 1.5.6.5 updates
fix diff-tree --stdin documentation
Files given on the command line are relative to $cwd
GIT 1.5.6.5
Linus Torvalds (1):
diff.renamelimit is a basic diff configuration
Mike Ralphson (1):
Documentation: typos / spelling fixes in older RelNotes
Peter Valdemar Mørch (1):
send-email: find body-encoding correctly
Pierre Habouzit (2):
git-checkout: fix command line parsing.
git-submodule: move ill placed shift.
Pieter de Bie (1):
git-name-rev: allow --name-only in combination with --stdin
René Scharfe (1):
git-name-rev: don't use printf without format
Stephan Beyer (1):
builtin-revert.c: typofix
Steve Haslam (1):
Propagate -u/--upload-pack option of "git clone" to transport.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
Posted 27 days ago by Petr Baudis
Hi,
I'd like to announce TopGit v0.1, the first (while also the youngest)
project from my Rhine pipeline (sitting at the river shore, hacking
free of all online distractions; the only catch is that the offline
distractions can be
... [More]
plentiful as well - too many pretty girls tend
to cluster around the water in the hot summer days for some strange
reason.)
TopGit is meant as a fresh start in the steps of StGIT, quilt-in-git
and others, of course in an attempt to Get It Right this time around.
TopGit is absolutely minimal porcelain layer that will manage your
patch queue for you using topic branches, one patch per branch.
And do _ONLY_ that. Unlike with StGIT, you can actually use the index.
TopGit aims to scratch three of my long-term patch management itches:
(i) Let you freely specify patch dependencies, instead of
forcing you to linearize your patches into a series
(ii) Keep your development history rigorously - it is to be
cleaned up only once, and that is when submitted upstream
(iii) Actually _WORK_ in the distributed environment;
you can have several repositories and develop your patches
in all of them
You can get TopGit at
http://repo.or.cz/w/topgit.git
and read up on its design, usage and implementation at:
http://repo.or.cz/w/topgit.git?a=blob;f=README
This is v0.1. I started working on it last evening (by spending over
two hours writing the README from scratch up to pretty much its current
state), got it feature complete few hours ago and testing it out the
rest of the evening. So yes, it probably still has some bugs, but it
should be ready for general practical usage, so please give it a try.
I just recreated
http://repo.or.cz/w/git/gitweb.git
with it and plan to use it pretty much exclusively for all my Git
patches from now on (and it turns out there is quite a few, I just had
no good way to organize and submit them so far).
Besides that, some utility commands are still missing, some of them
are TODO'd in the README. Most notably, the distributed workflow still
has no explicit support within TopGit which makes it a little awkward,
and there is actually no way to mail your patches yet ;-) - tg patch
will only dump a single one on stdout and you need to do the rest.
TopGit is not very well optimized so far; I made little to no
benchmarks and I'm focused on getting things work right first. Still,
I believe that most operations should not take noticeably long until
you get into many tens of densely dependent patches. One exception
is 'tg summary', which is unfortunately dog-slow and I couldn't
figure out how to speed it up further so far.
P.S.: git/gitweb.git is mentioned here just as an example of
real-world TopGit usage; ignore the contents. I actually do intend
to revive this repository, but there's still a lot of work to do.
P.P.S.: Can I get trademark on the (ironically) /[^p]g/ porcelains
now? ;-)
Have fun,
--
Petr "Pasky" Baudis
The next generation of interesting software will be done
on the Macintosh, not the IBM PC. -- Bill Gates
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
Posted about 1 month ago by Sverre Rabbelier
Heya,
I leave to the USA this Friday, and because of US tax laws I would
have to pay an insane amount of tax for just 2 weeks of development. I
have agreed with my mentor a while a go that I would finish up GSoC
before I left
... [More]
, that way avoiding having to pay US taxes. (Over here in
the Netherlands I don't have to pay tax over the $4500 because I
didn't make >6000 euro this year, the joys of being a student.) As a
result it is quite clear what GitStats will look like at the end of my
GSoC. I am going to continue working on it though, I am especially
interested in getting the '--follow' part of 'git log' working in such
a way that it can be incorporated into GitStats. As such, here is a
summary of what GitStat is at the moment. From the documentation:
$ cat gitstats-*
syntax: stats.py author
The purpose of the author module is to gather statistics
about authors, and to aggregate this information to provide
information about all the authors of a repo.
Currently the available metrics in the author module are
the following:
* Determine how many changes an author made (making a
distinction between lines added and lines deleted), and
record this per author, for all files in the repository.
It is possible to get this data for one specific author,
(although data for all authors will still be gathered,)
because the result is stored per author.
* Determine how many commits an author made that affected
a specific file. This metric is less granular, but a lot
faster. To retreive the more granular result, one could
simply iterate over the result of the above metric for
each author, and take only the data for the file one is
interested in.
* Aggregate the information from the first metric, adding
up the statistics from each author. This provides a more
general 'file activity' metric and is a nice example of
how an existing metric can be modified to do something
seemingly unrelated.
This module does not define any auxillery functions.
syntax: stats.py branch
The purpose of the branch module is to gather statistics
about branches, or related to branches.
Currently the available metrics in the branch module are
the following:
* Which of the branch head does a commit belong to
What this metric does is walk down the ancestry of the
target commit and increase the 'dilution' by one or each
merge it finds. The exception applies that when following
the 'primary' parent of the merge (e.g., the branch
recorded as the one the merge commit was made on), the
dilution is not increased. As such, if the target commit
is made on a branch, and then later on it's dilution
is calculated, it will have 0 dilution for that branch.
The branch with the lowest dilution is deemed to be the
branch that the commit belongs to most.
Note: In git there is no 'main' branch, as such any and
all branches branches that 'branched off' after the
target commit will also have dilution 0.
It also defines the following auxillery functions:
* Retreive the name of a commit if it is a the head of a
branch. This can be seen as the reverse of 'rev-parse'
for branch heads. This is used internally to provide the
user with a sensible name when telling them which branch
a commit belongs to.
* List all the branches that contain a specific commit,
optionally searching through remote branches as well as
optionally not filtering at all. This is used internally
to not search through branches that do not contain the
target commit.
syntax: stats.py bug
The purpose of the bug module is to gather statistics on
bugfixes within the content, and to aggregate this
information to provide with a report of the last N commits.
Currently the available metrics in the bug module are the
following:
* Determine whether a specific commit is a bugfix based on
other metrics. When one of the metrics is 'positive',
that is, it's return value indicates that the examined
commit is a bugfix, the 'bugfix rating' is increased by
a pre-configured amount. This amount can be specified per
metric, and can be set to '0' to ignore it.
* Aggregate the above metric over the past N commits. Also,
when running the above metric on more than one commit,
cache the result of calls to the git binary so that the
execution time is reduced. This means that the execution
time is not directly proportional to the size of the
repository. (Instead, there is a fixed 'start up' cost,
after which there is a 'per commit' cost, which is
relatively low.)
This module does not define any auxillery functions.
syntax: stats.py commit
The purpose of the commit module is to gather statistics
about commits, or related to commits, with the exception
of things related to diffs (only retrieving the raw diff is
in this module).
Currently the available metrics in the author module are
the following:
* Find all the commits that touched the same paths as the
specified commit. This is implemented by passing the
result of the 'paths touched' auxillary function to the
'commits that touched' auxillary function. See below.
* Retrieve the diff of a commit, either with or without
context, and optionally ignoring whitespace changes. This
method also works for the root commit (by making use of
the '--root' option to 'diff tree'.
* Show only commits of which the commit message, and/or the
commit diff, match a specific regexp. This is a simple
reimplementation of 'git log -S' and 'git log --grep'. It
is preferable to instead use the options native to
'git log', than to use this slower version.
Note: the regexps for the 'commit message' and the
'commit diff' may be different.
It also defines the following auxillary functions:
* Print a commit in a 'readable' way, this is by default
'git log -1 --name-only'. By the way of an environmental
variable ('GIT_STATS_PRETTY_PRINT'), it can be made to
instead use 'git log -1 --prety=oneline' by setting the
variable to 'online'.
* Retrieve all the paths that a specific commit touches,
this is used internally to limit the commits that have
to be searched when looking for a merge. That is done by
passing the output of this method to the one described
below.
* Find all commits that touched a list of files, optionally
treating the paths as relative to the current working
directory.
syntax: stats.py diff
The purpose of the diff module is to gather statistics
about diffs, or related to diffs.
Currently the available metrics in the diff module are the
following:
* Determine whether two commit diffs are equal, optionally
checking whether they are reverts instead. It is also
possible to just look at what lines were changed (and
ignore the actual changes).
* Find all commits that are reverted by the specified
commit by first retrieving the touched files, and then
examining all the commits that that touch the same files.
It also defines the following auxillery functions:
* Parse a raw commit diff and store it on a hunk-by-hunk
basis so that later on it can be examined more carefully
by other tools. Line numbers are optionally included so
that one can use those. For example, by comparing all the
added hunks with the deleted hunks of a second commit,
and vise versa, one can check for (partial) reverts.
syntax: stats.py index
The purpose of the index module is to gather statistics
about the index, or related to the index.
Currently the available metrics in the index module are the
following:
* List all the commits that touch the same files as the
staged files. This can be useful to find out which commit
introduced the bug fixed in this commit (by piping the
output of this method to one that looks at which lines
were touched for example).
It also defines the following auxillery functions:
* Get all the staged changes (optionally ignoring newly
added files). This is used internally to find all the
commits that touched the same files as those that are
currently staged.
syntax: stats.py matcher
The purpose of the matcher module is to compare hunks
within one diff to one another, and determine whether there
is any code being moved around.
Currently the available metrics in the index module are the
following:
* Try to find a match between the hunks in one diff, so
that code moves can be detected. This makes use of the
'diff size calculation' described below.
It also defines the following auxillery functions:
* Calculate the size of a diff, only counting the amount
of lines added, and the amount of lines deleted. This can
be used to determine a best 'interdiff' (the shortest one
is the best one), when searching for two hunks that are
moved around.
syntax: stats.py
Available commands:
author Activity for one author, file, or project
branch In how far a commit belongs to a branch
bug Determine whether a commitis a bugfix
commit Basic functionality already present in git
diff Compare two diffs and find reverts
index Find which commits touched the staged files
matcher Try to match hunks in a diff to find moves
test Run the unittests for GitStats
The stats.py module is the main entry point of GitStats,
it dispatches to the commands listed above. When no
arguments are passed, it automatically runs the command
with '--help' so that a usage message is shown for that
command.
Each of the modules it uses as subcommands defines a
'dispatch' function that is called with the users arguments
(with the exception of the first, which is the name of the
command executed). If anything should be returned to the
system, the dispatch method should return this value.
To run properly it requires the git_stats package to be
a subdirectory of the directory it resides in. That is,
your directory tree should be something like this:
.
|-- git_stats
| `--
|-- scripts
| `--
|-- t
| `--
`-- stats.py
syntax: stats.py tests
The purpose of the tests module is to make available the
unittests for GitStats to external programs. It may be
used to run the unittests for GitStats from for example
a shell script. It's output is made to match the git
regression test suite.
--
Cheers,
Sverre Rabbelier
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
Posted about 1 month ago by Junio C Hamano
The latest maintenance release GIT 1.5.6.4 is available at the
usual places:
http://www.kernel.org/pub/software/scm/git/
git-1.5.6.4.tar.{gz,bz2} (source tarball)
git-htmldocs-1.5.6.4.tar.{gz,bz2} (preformatted
... [More]
docs)
git-manpages-1.5.6.4.tar.{gz,bz2} (preformatted docs)
The RPM binary packages for a few architectures are also provided
as courtesy.
RPMS/$arch/git-*-1.5.6.4-1.fc9.$arch.rpm (RPM)
GIT v1.5.6.4 Release Notes
==========================
Fixes since v1.5.6.3
--------------------
* Various commands could overflow its internal buffer on a platform
with small PATH_MAX value in a repository that has contents with
long pathnames.
* There wasn't a way to make --pretty=format:%<> specifiers to honor
.mailmap name rewriting for authors and committers. Now you can with
%aN and %cN.
* Bash completion wasted too many cycles; this has been optimized to be
usable again.
* Bash completion lost ref part when completing something like "git show
pu:Makefile".
* "git-cvsserver" did not clean up its temporary working area after annotate
request.
* "git-daemon" called syslog() from its signal handler, which was a
no-no.
* "git-fetch" into an empty repository used to remind that the fetch will
be huge by saying "no common commits", but this was an unnecessary
noise; it is already known by the user anyway.
* "git-http-fetch" would have segfaulted when pack idx file retrieved
from the other side was corrupt.
* "git-index-pack" used too much memory when dealing with a deep delta chain.
* "git-mailinfo" (hence "git-am") did not correctly handle in-body [PATCH]
line to override the commit title taken from the mail Subject header.
* "git-rebase -i -p" lost parents that are not involved in the history
being rewritten.
* "git-rm" lost track of where the index file was when GIT_DIR was
specified as a relative path.
* "git-rev-list --quiet" was not quiet as advertised.
Contains other various documentation fixes. [Less]
Posted about 1 month ago by Junio C Hamano
The latest maintenance release GIT 1.5.6.3 is available at the
usual places:
http://www.kernel.org/pub/software/scm/git/
git-1.5.6.3.tar.{gz,bz2} (source tarball)
git-htmldocs-1.5.6.3.tar.{gz,bz2} (preformatted
... [More]
docs)
git-manpages-1.5.6.3.tar.{gz,bz2} (preformatted docs)
The RPM binary packages for a few architectures are also provided
as courtesy. As the machine I cut them at kernel.org has been updated to FC9
recently, their filenames now have "fc9" in them.
RPMS/$arch/git-*-1.5.6.3-1.fc9.$arch.rpm (RPM)
The changes since the previous maintenance release is getting smaller.
About half the diff is in Documentation/ section.
Documentation/RelNotes-1.5.6.3.txt | 52
Documentation/git-cvsimport.txt | 6
Documentation/git-cvsserver.txt | 3
Documentation/git-mailinfo.txt | 5 -
Documentation/git-rev-parse.txt | 4 -
Documentation/git.txt | 3 -
Documentation/gitattributes.txt | 33 ----------
Documentation/gitcvs-migration.txt | 5
Documentation/pretty-formats.txt | 8 --
RelNotes | 2 -
builtin-clone.c | 8 --
builtin-commit.c | 11 ----
builtin-log.c | 16 -------
builtin-mailinfo.c | 3 -
builtin-send-pack.c | 3 -
builtin-tag.c | 2 -
contrib/completion/git-completion.bash | 30
convert.c | 25 ----------
diff.c | 8 ----
git-am.sh | 3 -
git-submodule.sh | 3 -
git-svn.perl | 2
http.c | 36 --------------
path.c | 2 -
read-cache.c | 16
refs.c | 2 -
run-command.c | 2
t/t0004-unwritable.sh | 19 -----
t/t1301-shared-repo.sh | 23
t/t5404-tracking-branches.sh | 7
t/t5601-clone.sh | 20 -
transport.c | 4 -
32 files changed, 253 insertions( ), 113 deletions(-)
----------------------------------------------------------------
GIT v1.5.6.3 Release Notes
==========================
Fixes since v1.5.6.2
--------------------
* Setting core.sharerepository to traditional "true" value was supposed to make
the repository group writable but should not affect permission for others.
However, since 1.5.6, it was broken to drop permission for others when umask is
022, making the repository unreadable by others.
* Setting GIT_TRACE will report spawning of external process via run_command().
* Using an object with very deep delta chain pinned memory needed for extracting
intermediate base objects unnecessarily long, leading to excess memory usage.
* Bash completion script did not notice '--' marker on the command
line and tried the relatively slow "ref completion" even when
completing arguments after one.
* Registering a non-empty blob racily and then truncating the working
tree file for it confused "racy-git avoidance" logic into thinking
that the path is now unchanged.
* The section that describes attributes related to git-archive were placed
in a wrong place in the gitattributes(5) manual page.
* "git am" was not helpful to the users when it detected that the committer
information is not set up properly yet.
* "git clone" had a leftover debugging fprintf().
* "git clone -q" was not quiet enough as it used to and gave object count
and progress reports.
* "git clone" marked downloaded packfile with .keep; this could be a
good thing if the remote side is well packed but otherwise not,
especially for a project that is not really big.
* "git daemon" used to call syslog() from a signal handler, which
could raise signals of its own but generally is not reentrant. This
was fixed by restructuring the code to report syslog() after the handler
returns.
* When "git push" tries to remove a remote ref, and corresponding
tracking ref is missing, we used to report error (i.e. failure to
remove something that does not exist).
* "git mailinfo" (hence "git am") did not handle commit log messages in a
MIME multipart mail correctly.
Contains other various documentation fixes.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
Posted about 1 month ago by Junio C Hamano
The latest maintenance release GIT 1.5.6.2 are available at the usual
places:
http://www.kernel.org/pub/software/scm/git/
git-1.5.6.2.tar.{gz,bz2} (source tarball)
git-htmldocs-1.5.6.2.tar.{gz,bz2} (preformatted
... [More]
docs)
git-manpages-1.5.6.2.tar.{gz,bz2} (preformatted docs)
The RPM binary packages for a few architectures are also provided as
courtesy. As the machine I cut them at kernel.org has been updated to FC9
recently, their filenames now have .fc9. in them.
RPMS/$arch/git-*-1.5.6.2-1.fc9.$arch.rpm (RPM)
There still are a handful more fixes queued for 'maint' so we might see
another maintenance release, 1.5.6.3, not too far in the future.
----------------------------------------------------------------
Changes since v1.5.6.1 are as follows:
Avery Pennarun (1):
git-svn: avoid filling up the disk with temp files.
Björn Steinbrink (1):
git cat-file: Fix memory leak in batch mode
Eric Wong (1):
git-svn: don't sanitize remote names in config
Jeff King (3):
fetch: report local storage errors in status table
doc/rev-parse: clarify reflog vs --until for specifying revisions
fetch: give a hint to the user when local refs fail to update
Jochen Voss (1):
avoid off-by-one error in run_upload_archive
Joey Hess (1):
fix git config example syntax
Johannes Schindelin (2):
clone: respect url.insteadOf setting in global configs
clone: respect the settings in $HOME/.gitconfig and /etc/gitconfig
Junio C Hamano (9):
Allow "git-reset path" when unambiguous
diff --check: do not discard error status upon seeing a good line
git-shell: accept "git foo" form
GIT 1.5.4.6
GIT 1.5.5.5
Start draft release notes for 1.5.6.2
Work around gcc warnings from curl headers
Fix executable bits in t/ scripts
GIT 1.5.6.2
Shawn O. Pearce (1):
Fix describe --tags --long so it does not segfault
Thomas Rast (1):
Fix 'git show' on signed tag of signed tag of commit
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
Posted 2 months ago by Junio C Hamano
The latest maintenance release GIT 1.5.6.1 is available at the
usual places:
http://www.kernel.org/pub/software/scm/git/
git-1.5.6.1.tar.{gz,bz2} (tarball)
git-htmldocs-1.5.6.1.tar.{gz,bz2} (preformatted
... [More]
docs)
git-manpages-1.5.6.1.tar.{gz,bz2} (preformatted docs)
RPMS/$arch/git-*-1.5.6.1-1.$arch.rpm (RPM)
GIT v1.5.6.1 Release Notes
==========================
Fixes since v1.5.6
------------------
* Last minute change broke loose object creation on AIX.
* (performance fix) We used to make $GIT_DIR absolute path early in the
programs but keeping it relative to the current directory internally
gives 1-3 per-cent performance boost.
* bash completion knows the new --graph option to git-log family.
* git-diff -c/--cc showed unnecessary "deletion" lines at the context
boundary.
* git-for-each-ref ignored %(object) and %(type) requests for tag
objects.
* git-merge usage had a typo.
* Rebuilding of git-svn metainfo database did not take rewriteRoot
option into account.
* Running "git-rebase --continue/--skip/--abort" before starting a
rebase gave nonsense error messages.
----------------------------------------------------------------
Changes since v1.5.6 are as follows:
Brandon Casey (2):
git-merge.sh: fix typo in usage message: sucesses --> succeeds
t7502-commit.sh: test_must_fail doesn't work with inline environment variables
Dan McGee (1):
completion: add --graph to log command completion
Dmitry Potapov (1):
fix update-hook-example to work with packed tag references
Jan Krüger (2):
Documentation: fix formatting in git-svn
git-svn: make rebuild respect rewriteRoot option
Jeff King (2):
for-each-ref: implement missing tag values
clone: create intermediate directories of destination repo
Junio C Hamano (2):
diff -c/--cc: do not include uninteresting deletion before leading context
GIT 1.5.6.1
Linus Torvalds (1):
Make git_dir a path relative to work_tree in setup_work_tree()
Michele Ballabio (1):
parse-options.c: fix documentation syntax of optional arguments
Patrick Higgins (1):
Workaround for AIX mkstemp()
Stephan Beyer (4):
git-rebase.sh: Add check if rebase is in progress
api-builtin.txt: update and fix typo
api-parse-options.txt: Introduce documentation for parse options API
Extend parse-options test suite
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html [Less]
Posted 2 months ago by Junio C Hamano
The latest feature release GIT 1.5.6 is available at the usual
places:
http://www.kernel.org/pub/software/scm/git/
git-1.5.6.tar.{gz,bz2} (tarball)
git-htmldocs-1.5.6.tar.{gz,bz2} (preformatted
... [More]
docs)
git-manpages-1.5.6.tar.{gz,bz2} (preformatted docs)
RPMS/$arch/git-*-1.5.6-1.$arch.rpm (RPM)
As promised, this cycle was short and the release is with only relatively
small impact changes.
----------------------------------------------------------------
GIT v1.5.6 Release Notes
========================
Updates since v1.5.5
--------------------
(subsystems)
* Comes with updated gitk and git-gui.
(portability)
* git will build on AIX better than before now.
* core.ignorecase configuration variable can be used to work better on
filesystems that are not case sensitive.
* "git init" now autodetects the case sensitivity of the filesystem and
sets core.ignorecase accordingly.
* cpio is no longer used; neither "curl" binary (libcurl is still used).
(documentation)
* Many freestanding documentation pages have been converted and made
available to "git help" (aka "man git") as section 7 of
the manual pages. This means bookmarks to some HTML documentation
files may need to be updated (eg "tutorial.html" became
"gittutorial.html").
(performance)
* "git clone" was rewritten in C. This will hopefully help cloning a
repository with insane number of refs.
* "git rebase --onto $there $from $branch" used to switch to the tip of
$branch only to immediately reset back to $from, smudging work tree
files unnecessarily. This has been optimized.
* Object creation codepath in "git-svn" has been optimized by enhancing
plumbing commands git-cat-file and git-hash-object.
(usability, bells and whistles)
* "git add -p" (and the "patch" subcommand of "git add -i") can choose to
apply (or not apply) mode changes independently from contents changes.
* "git bisect help" gives longer and more helpful usage information.
* "git bisect" does not use a special branch "bisect" anymore; instead, it
does its work on a detached HEAD.
* "git branch" (and "git checkout -b") can be told to set up
branch..rebase automatically, so that later you can say "git pull"
and magically cause "git pull --rebase" to happen.
* "git branch --merged" and "git branch --no-merged" can be used to list
branches that have already been merged (or not yet merged) to the
current branch.
* "git cherry-pick" and "git revert" can add a sign-off.
* "git commit" mentions the author identity when you are committing
somebody else's changes.
* "git diff/log --dirstat" output is consistent between binary and textual
changes.
* "git filter-branch" rewrites signed tags by demoting them to annotated.
* "git format-patch --no-binary" can produce a patch that lack binary
changes (i.e. cannot be used to propagate the whole changes) meant only
for reviewing.
* "git init --bare" is a synonym for "git --bare init" now.
* "git gc --auto" honors a new pre-auto-gc hook to temporarily disable it.
* "git log --pretty=tformat:" gives a LF after each entry,
instead of giving a LF between each pair of entries which is how
"git log --pretty=format:" works.
* "git log" and friends learned the "--graph" option to show the ancestry
graph at the left margin of the output.
* "git log" and friends can be told to use date format that is different
from the default via 'log.date' configuration variable.
* "git send-email" now can send out messages outside a git repository.
* "git send-email --compose" was made aware of rfc2047 quoting.
* "git status" can optionally include output from "git submodule
summary".
* "git svn" learned --add-author-from option to propagate the authorship
by munging the commit log message.
* new object creation and looking up in "git svn" has been optimized.
* "gitweb" can read from a system-wide configuration file.
(internal)
* "git unpack-objects" and "git receive-pack" is now more strict about
detecting breakage in the objects they receive over the wire.
Fixes since v1.5.5
------------------
All of the fixes in v1.5.5 maintenance series are included in
this release, unless otherwise noted.
And there are too numerous small fixes to otherwise note here ;-)
----------------------------------------------------------------
Changes since v1.5.5 are as follows:
A Large Angry SCM (1):
git-repack: re-enable parsing of -n command line option
Adam Roben (11):
Add tests for git cat-file
git-cat-file: Small refactor of cmd_cat_file
git-cat-file: Make option parsing a little more flexible
git-cat-file: Add --batch-check option
git-cat-file: Add --batch option
Move git-hash-object tests from t5303 to t1007
Add more tests for git hash-object
git-hash-object: Add --stdin-paths option
Git.pm: Add command_bidi_pipe and command_close_bidi_pipe
Git.pm: Add hash_and_insert_object and cat_blob
git-svn: Speed up fetch
Adam Simpkins (15):
Remove dead code: show_log() sep argument and diff_options.msg_sep
log: print log entry terminator even if the message is empty
revision API: split parent rewriting and parent printing options
Add history graph API
log and rev-list: add --graph option
graph API: eliminate unnecessary indentation
graph API: fix graph mis-alignment after uninteresting commits
graph API: don't print branch lines for uninteresting merge parents
log --graph --left-right: show left/right information in place of '*'
Fix output of "git log --graph --boundary"
get_revision(): honor the topo_order flag for boundary commits
graph API: improve display of merge commits
graph API: avoid printing unnecessary padding before some octopus merges
graph API: fix "git log --graph --first-parent"
git log --graph: print '*' for all commits, including merges
Alberto Bertogli (1):
builtin-apply: Show a more descriptive error on failure when opening a patch
Alejandro Mery (1):
git-am: head -1 is obsolete and doesn't work on some new systems
Alex Riesen (13):
Use "=" instead of "==" in condition as it is more portable
Fix use after free() in builtin-fetch
Use the modern syntax of git-diff-files in t2002-checkout-cache-u.sh
Improve reporting of errors in config file routines
Make the exit code of add_file_to_index actually useful
Extend interface of add_files_to_cache to allow ignore indexing errors
Add --ignore-errors to git-add to allow it to skip files with read errors
Add a test for git-add --ignore-errors
Add a config option to ignore errors for git-add
Ensure that a test is run in the trash directory
Fix t6031 on filesystems without working exec bit
Fix t3701 if core.filemode disabled
Fix t5516 on cygwin: it does not like double slashes at the beginning of a path
Anders Waldenborg (1):
gitweb: Convert string to internal form before chopping in chop_str
Andy Parkins (1):
post-receive-email: fix accidental removal of a trailing space in signature line
Ariel Badichi (2):
copy.c: copy_fd - correctly report write errors
archive.c: format_subst - fixed bogus argument to memchr
Ask Bjørn Hansen (2):
gitweb setup instruction: rewrite HEAD and root as well
send-email: Allow the envelope sender to be set via configuration
Avery Pennarun (5):
git-svn: add documentation for --use-log-author option.
git-svn: Add --add-author-from option.
git-svn: add documentation for --add-author-from option.
git-svn: don't append extra newlines at the end of commit messages.
git-svn: test that extra blank lines aren't inserted in commit messages.
Bart Trojanowski (1):
make git-status use a pager
Björn Steinbrink (2):
Fix section about backdating tags in the git-tag docs
name-rev: Fix segmentation fault when using --all
Boyd Lynn Gerber (2):
progress.c: avoid use of dynamic-sized array
Port to 12 other Platforms.
Brandon Casey (8):
filter-branch.sh: support nearly proper tag name filtering
git-clone.txt: Adjust note to --shared for new pruning behavior of git-gc
compat/fopen.c: avoid clobbering the system defined fopen macro
repack: modify behavior of -A option to leave unreferenced objects unpacked
git-gc: always use -A when manually repacking
builtin-gc.c: deprecate --prune, it now really has no effect
builtin-clone.c: Need to closedir() in copy_or_link_directory()
t/Makefile: "trash" directory was renamed recently
Bryan Donlan (10):
git-rebase.sh: Fix --merge --abort failures when path contains whitespace
config.c: Escape backslashes in section names properly
git-send-email.perl: Handle shell metacharacters in $EDITOR properly
test-lib.sh: Add a test_set_editor function to safely set $VISUAL
Use test_set_editor in t9001-send-email.sh
test-lib.sh: Fix some missing path quoting
lib-git-svn.sh: Fix quoting issues with paths containing shell metacharacters
Don't use the 'export NAME=value' in the test scripts.
Fix tests breaking when checkout path contains shell metacharacters
Rename the test trash directory to contain spaces.
Caio Marcelo de Oliveira Filho (1):
git-format-patch: add --no-binary to omit binary changes in the patch.
Carlos Rica (2):
Fix documentation syntax of optional arguments in short options.
core-tutorial.txt: Fix showing the current behaviour.
Chris Frey (2):
Documentation/git-prune.txt: document unpacked logic
Documentation/git-repack.txt: document new -A behaviour
Chris Parsons (1):
Updated status to show 'Not currently on any branch' in red
Chris Ridd (1):
Improve sed portability
Christian Couder (32):
bisect: add "git bisect help" subcommand to get a long usage string
bisect: fix bad rev checking in "git bisect good"
bisect: report bad rev better
bisect: squelch "fatal: ref HEAD not a symref" misleading message
git-bisect: make "start", "good" and "skip" succeed or fail atomically
help: use man viewer path from "man..path" config var
documentation: help: add "man..path" config variable
help: use "man..cmd" as custom man viewer command
documentation: help: add info about "man..cmd" config var
documentation: web--browse: add a note about konqueror
rev-parse: teach "--verify" to be quiet when using "-q" or "--quiet"
rev-parse: fix --verify to error out when passed junk after a good rev
Documentation: hooks: fix missing verb in pre-applypatch description
Documentation: rename "hooks.txt" to "githooks.txt" and make it a man page
Documentation: improve "add", "pull" and "format-patch" examples
Documentation: bisect: add a few "git bisect run" examples
bisect: print an error message when "git rev-list --bisect-vars" fails
rev-parse: add test script for "--verify"
rev-parse: fix using "--default" with "--verify"
rev-parse --verify: do not output anything on error
Documentation: rev-parse: add a few "--verify" and "--default" examples
bisect: add test cases to check that "git bisect start" is atomic
bisect: fix left over "BISECT_START" file when starting with junk rev
bisect: trap critical errors in "bisect_start"
bisect: use a detached HEAD to bisect
Documentation: convert tutorials to man pages
bisect: use "$GIT_DIR/BISECT_START" to check if we are bisecting
Documentation: convert "glossary" and "core-tutorial" to man pages
documentation: convert "diffcore" and "repository-layout" to man pages
documentation: move git(7) to git(1)
documentation: bisect: remove bits talking about a bisection branch
Documentation: RelNotes-1.5.6: talk about renamed HTML files
Christian Engwer (1):
git-svn fails in prop_walk if $self->{path} is not empty
Christian Stimming (3):
git-gui: Update German translation
gitk: Update German translation
gitk: German translation again updated
Clemens Buchacher (2):
Reset the signal being handled
http-push: remove remote locks on exit signals
Clifford Caoile (2):
Docs gitk: Explicitly mention the files that gitk uses (~/.gitk)
git.el: Set process-environment instead of invoking env
Dan McGee (4):
completion: allow 'git remote' subcommand completion
completion: remove use of dashed git commands
Allow cherry-pick (and revert) to add signoff line
Remove 'header' from --signoff option description
Daniel Barkalow (14):
Fix config key miscount in url.*.insteadOf
Make walker.fetch_ref() take a struct ref.
Make ls-remote http://... list HEAD, like for git://...
Mark the list of refs to fetch as const
Add a lockfile function to append to a file
Add a library function to add an alternate to the alternates file
Have a constant extern refspec for "--tags"
Allow for having for_each_ref() list extra refs
Add a function to set a non-default work tree
Provide API access to init_db()
Build in clone
clone: fall back to copying if hardlinking fails
Test that --reference actually suppresses fetching referenced objects
Use nonrelative paths instead of absolute paths for cloned repositories
Dirk Suesserott (2):
Documentation/git-request-pull: Fixed a typo ("send" -> "end")
Documentation/git-mailsplit: Enhanced description of -o option
Dmitry Potapov (2):
git-gc --prune is deprecated
git-init: autodetect core.ignorecase
Dmitry V. Levin (1):
builtin-fetch.c (store_updated_refs): Honor update_local_ref() return value
Dustin Sallings (3):
Documentation/config.txt: Mention branch..rebase applies to "git pull"
Allow tracking branches to set up rebase by default.
Allow tracking branches to set up rebase by default.
Eric Wong (1):
git-svn: fix cloning of HTTP URLs with ' ' in their path
Flavio Poletti (1):
git-instaweb: improve auto-discovery of httpd and call conventions.
Florian Ragwitz (1):
filter-branch: Documentation fix.
Frank Lichtenheld (4):
var: Don't require to be in a git repository.
Git.pm: Don't require a repository instance for config
Git.pm: Don't require repository instance for ident
send-email: Don't require to be called in a repository
Fred Maranhão (1):
fix typo in tutorial
Geoffrey Irving (1):
doc: adding gitman.info and *.texi to .gitignore
Gerrit Pape (7):
gitweb: fallback to system-wide config file if default config does not exist
gitweb: fallback to system-wide config file (fixup)
di