*NIX-SOFT -> Разработка

Git 1.7.5

,

распределённая СКВ файлов

Дата публикации:

ЭЖД, 6.08.2009 - 9:03

ph34r.gif Git 1.6.4

Git (произн. «гит») — распределённая система управления версиями файлов. Проект был создан Линусом Торвальдсом для управления разработкой ядра Linux. На сегодняшний день поддерживается Джунио Хамано (англ. Junio C. Hamano).

Примерами проектов, использующих Git, являются Linux kernel, Cairo, GNU Core Utilities, Mesa, Wine и некоторые дистрибутивы GNU/Linux.

Программа является свободной и выпущена под лицензией GNU GPL версии 2.

Система спроектирована как набор программ, специально разработанных с учётом их использования в скриптах. Это позволяет удобно создавать специализированные системы контроля версий на базе Git или пользовательские интерфейсы. Например, Cogito является именно таким примером фронтенда к репозиториям Git, а StGit использует Git для управления коллекцией патчей.

Git поддерживает быстрое разделение и слияние версий, включает инструменты для визуализации и навигации по нелинейной истории разработки. Как и Darcs, BitKeeper, Mercurial, SVK, Bazaar и Monotone, Git предоставляет каждому разработчику локальную копию всей истории разработки, изменения копируются из одного репозитория в другой.

Удалённый доступ к репозиториям Git обеспечивается git-daemon, SSH- или HTTP-сервером. TCP-сервис git-daemon входит в дистрибутив Git и является наряду с SSH наиболее распространённым и надёжным методом доступа. Метод доступа по HTTP, несмотря на ряд ограничений, очень популярен в контролируемых сетях, потому что позволяет использование существующих конфигураций сетевых фильтров.

Обмен изменениями с другими системами контроля версий:Материал из Википедии — свободной энциклопедии

Home_http://git-scm.com/
Downloads (~2,1 Mb)_ftp://ftp.kernel.org...-1.6.4.tar.bz2

ЭЖД, 22.08.2009 - 11:00

ph34r.gif Git 1.6.4.1

* An unquoted value in the configuration file, when it contains more than one whitespaces in a row, got them replaced with a single space.
* "git am" used to accept a single piece of e-mail per file (not a mbox) as its input, but multiple input format support in v1.6.4 broke it. Apparently many people have been depending on this feature.
* The short help text for "git filter-branch" command was a single long line, wrapped by terminals, and was hard to read.
* The "recursive" strategy of "git merge" segfaulted when a merge has more than one merge-bases, and merging of these merge-bases involves a rename/rename or a rename/add conflict.
* "git pull --rebase" did not use the right fork point when the repository has already fetched from the upstream that rewinds the branch it is based on in an earlier fetch.
* Explain the concept of fast-forward more fully in "git push" documentation, and hint to refer to it from an error message when the command refuses an update to protect the user.
* The default value for pack.deltacachesize, used by "git repack", is now 256M, instead of unbounded. Otherwise a repack of a moderately sized repository would needlessly eat into swap.
* Document how "git repack" (hence "git gc") interacts with a repository that borrows its objects from other repositories (e.g. ones created by "git clone -s").
* "git show" on an annotated tag lacked a delimiting blank line between the tag itself and the contents of the object it tags.
* "git verify-pack -v" erroneously reported number of objects with too deep delta depths as "chain length 0" objects.
* Long names of authors and committers outside US-ASCII were sometimes incorrectly shown in "gitweb".

Downloads (~2,1 Mb)_ftp://ftp.kernel.org....6.4.1.tar.bz2

ЭЖД, 31.08.2009 - 11:48

ph34r.gif Git 1.6.4.1

* --date=relative output between 1 and 5 years ago rounded the number of
years when saying X years Y months ago, instead of rounding it down.

* "git add -p" did not handle changes in executable bits correctly
(a regression around 1.6.3).

* "git apply" did not honor GNU diff's convention to mark the creation/deletion
event with UNIX epoch timestamp on missing side.

* "git checkout" incorrectly removed files in a directory pointed by a
symbolic link during a branch switch that replaces a directory with
a symbolic link.

* "git clean -d -f" happily descended into a subdirectory that is managed by a
separate git repository. It now requires two -f options for safety.

* "git fetch/push" over http transports had two rather grave bugs.

* "git format-patch --cover-letter" did not prepare the cover letter file
for use with non-ASCII strings when there are the series contributors with
non-ASCII names.

* "git pull origin branch" and "git fetch origin && git merge origin/branch"
left different merge messages in the resulting commit.

Downloads (~2,1 Mb)_ftp://ftp.kernel.org....6.4.2.tar.bz2

ЭЖД, 13.09.2009 - 13:57

ph34r.gif git 1.6.4.3

* "git clone" from an empty repository gave unnecessary error message,
even though it did everything else correctly.

* "git cvsserver" invoked git commands via "git-foo" style, which has long
been deprecated.

* "git fetch" and "git clone" had an extra sanity check to verify the
presense of the corresponding *.pack file before downloading *.idx
file by issuing a HEAD request. Github server however sometimes
gave 500 (Internal server error) response to HEAD even if a GET
request for *.pack file to the same URL would have succeeded, and broke
clone over HTTP from some of their repositories. As a workaround, this
verification has been removed (as it is not absolutely necessary).

* "git grep" did not like relative pathname to refer outside the current
directory when run from a subdirectory.

* an error message from "git push" was formatted in a very ugly way.

* "git svn" did not quote the subversion user name correctly when
running its author-prog helper program.

Downloads (~2,1 Mb)_ftp://ftp.kernel.org....6.4.3.tar.bz2

ЭЖД, 17.09.2009 - 17:12

ph34r.gif git 1.6.4.4

* The workaround for Github server that sometimes gave 500 (Internal server
error) response to HEAD requests in 1.6.4.3 introduced a regression that
caused re-fetching projects over http to segfault in certain cases due
to uninitialized pointer being freed.

* "git pull" on an unborn branch used to consider anything in the work
tree and the index discardable.

* "git diff -b/w" did not work well on the incomplete line at the end of
the file, due to an incorrect hashing of lines in the low-level xdiff
routines.

* "git checkout-index --prefix=$somewhere" used to work when $somewhere is
a symbolic link to a directory elsewhere, but v1.6.4.2 broke it.

* "git unpack-objects --strict", invoked when receive.fsckobjects
configuration is set in the receiving repository of "git push", did not
properly check the objects, especially the submodule links, it received.

Downloads (~2,1 Mb)_ftp://ftp.kernel.org....6.4.4.tar.bz2

ЭЖД, 11.10.2009 - 10:55

ph34r.gif git 1.6.5

» "ChangeLog" «


Downloads (~2,1 Mb)_ftp://ftp.kernel.org...-1.6.5.tar.bz2

ЭЖД, 17.10.2009 - 19:02

ph34r.gif git 1.6.5.1

Fixes since v1.6.5
--------

* An corrupt pack could make codepath to read objects into an
infinite loop.

* Download throughput display was always shown in KiB/s but on fast links
it is more appropriate to show it in MiB/s.

* "git grep -f filename" used uninitialized variable and segfaulted.

* "git clone -b branch" gave a wrong commit object name to post-checkout
hook.

* "git pull" over http did not work on msys.

Downloads (~2,1 Mb)_ftp://ftp.kernel.org....6.5.1.tar.bz2

ЭЖД, 26.10.2009 - 11:22

ph34r.gif git 1.6.5.2

* Installation of templates triggered a bug in busybox when using tar
implementation from it.

* "git add -i" incorrectly ignored paths that are already in the index
if they matched .gitignore patterns.

* "git describe --always" should have produced some output even there
were no tags in the repository, but it didn't.

* "git ls-files" when showing tracked files incorrectly paid attention
to the exclude patterns.

Downloads (~2,2 Mb)_ftp://ftp.kernel.org....6.5.2.tar.bz2

ЭЖД, 17.11.2009 - 19:53

ph34r.gif git 1.6.5.3

* info/grafts file didn't ignore trailing CR at the end of lines.

* Packages generated on newer FC were unreadable by older versions of
RPM as the new default is to use stronger hash.

* output from "git blame" was unreadable when the file ended in an
incomplete line.

* "git add -i/-p" didn't handle deletion of empty files correctly.

* "git clone" takes up to two parameters, but did not complain when
given more arguments than necessary and silently ignored them.

* "git cvsimport" did not read files given as command line arguments
correctly when it is run from a subdirectory.

* "git diff --color-words -U0" didn't work correctly.

* The handling of blank lines at the end of file by "git diff/apply
--whitespace" was inconsistent with the other kinds of errors.
They are now colored, warned against, and fixed the same way as others.

* There was no way to allow blank lines at the end of file without
allowing extra blanks at the end of lines. You can use blank-at-eof
and blank-at-eol whitespace error class to specify them separately.
The old trailing-space error class is now a short-hand to set both.

* "-p" option to "git format-patch" was supposed to suppress diffstat
generation, but it was broken since 1.6.1.

* "git imap-send" did not compile cleanly with newer OpenSSL.

* "git help -a" outside of a git repository was broken.

* "git ls-files -i" was supposed to be inverse of "git ls-files" without -i
with respect to exclude patterns, but it was broken since 1.6.5.2.

* "git ls-remote" outside of a git repository over http was broken.

* "git rebase -i" gave bogus error message when the command word was
misspelled.

* "git receive-pack" that is run in response to "git push" did not run
garbage collection nor update-server-info, but in larger hosting sites,
these almost always need to be run. To help site administrators, the
command now runs "gc --auto" and "u-s-i" by setting receive.autogc
and receive.updateserverinfo configuration variables, respectively.

* Release notes spelled the package name with incorrect capitalization.

* "gitweb" did not escape non-ascii characters correctly in the URL.

* "gitweb" showed "patch" link even for merge commits.

* "gitweb" showed incorrect links for blob line numbers in pathinfo mode.

Downloads (~2,2 Mb)_ftp://ftp.kernel.org....6.5.3.tar.bz2

ЭЖД, 3.12.2009 - 21:46

ph34r.gif git 1.6.5.4

Fixes since v1.6.5.3
-----

* "git help" (without argument) used to check if you are in a directory
under git control. There was no breakage in behaviour per-se, but this
was unnecessary.

* "git prune-packed" gave progress output even when its standard error is
not connected to a terminal; this caused cron jobs that run it to
produce crufts.

* "git pack-objects --all-progress" is an option to ask progress output
from write-object phase _if_ progress output were to be produced, and
shouldn't have forced the progress output.

* "git apply -p --directory=" did not work well for a
non-default value of n.

* "git merge foo HEAD" was misparsed as an old-style invocation of the
command and produced a confusing error message. As it does not specify
any other branch to merge, it shouldn't be mistaken as such. We will
remove the old style "git merge HEAD ..." syntax in
future versions, but not in this release,

* "git merge -m ..." added the standard merge message
on its own after user-supplied message, which should have overrided the
standard one.

Downloads (~2,2 Mb)_ftp://ftp.kernel.org....6.5.4.tar.bz2

ЭЖД, 7.12.2009 - 11:38

ph34r.gif git 1.6.5.5

Fixes since v1.6.5.4
-----

* Manual pages can be formatted with older xmlto again.

* GREP_OPTIONS exported from user's environment could have broken
our scripted commands.

* In configuration files, a few variables that name paths can begin with
~/ and ~username/ and they are expanded as expected. This is not a
bugfix but 1.6.6 will have this and without backporting users cannot
easily use the same ~/.gitconfig across versions.

* "git diff -B -M" did the same computation to hash lines of contents
twice, and held onto memory after it has used the data in it
unnecessarily before it freed.

* "git diff -B" and "git diff --dirstat" was not counting newly added
contents correctly.

* "git format-patch revisions... -- path" issued an incorrect error
message that suggested to use "--" on the command line when path
does not exist in the current work tree (it is a separate matter if
it makes sense to limit format-patch with pathspecs like that
without using the --full-diff option).

* "git grep -F -i StRiNg" did not work as expected.

* Enumeration of available merge strategies iterated over the list of
commands in a wrong way, sometimes producing an incorrect result.

* "git shortlog" did not honor the "encoding" header embedded in the
commit object like "git log" did.

* Reading progress messages that come from the remote side while running
"git pull" is given precedence over reading the actual pack data to
prevent garbled progress message on the user's terminal.

* "git rebase" got confused when the log message began with certain
strings that looked like Subject:, Date: or From: header.

* "git reset" accidentally run in .git/ directory checked out the
work tree contents in there.

Downloads (~2,2 Mb)_ftp://ftp.kernel.org....6.5.5.tar.bz2

ЭЖД, 11.12.2009 - 22:56

ph34r.gif git 1.6.5.6

Fixes since v1.6.5.5
-----

* "git add -p" had a regression since v1.6.5.3 that broke deletion of
non-empty files.

* "git archive -o o.zip -- Makefile" produced an archive in o.zip
but in POSIX tar format.

* Error message given to "git pull --rebase" when the user didn't give
enough clue as to what branch to integrate with still talked about
"merging with" the branch.

* Error messages given by "git merge" when the merge resulted in a
fast-forward still were in plumbing lingo, even though in v1.6.5
we reworded messages in other cases.

* The post-upload-hook run by upload-pack in response to "git fetch" has
been removed, due to security concerns (the hook first appeared in
1.6.5).

Downloads (~2,2 Mb)_ftp://ftp.kernel.org....6.5.6.tar.bz2

ЭЖД, 17.12.2009 - 21:26

ph34r.gif git 1.6.5.7

Fixes since v1.6.5.6
-----

* If a user specifies a color for a (i.e. a class of things to show
in a particular color) that is known only by newer versions of git
(e.g. "color.diff.func" was recently added for upcoming 1.6.6 release),
an older version of git should just ignore them. Instead we diagnosed
it as an error.

* With help.autocorrect set to non-zero value, the logic to guess typoes
in the subcommand name misfired and ran a random nonsense command.

* If a command is run with an absolute path as a pathspec inside a bare
repository, e.g. "rev-list HEAD -- /home", the code tried to run
strlen() on NULL, which is the result of get_git_work_tree(), and
segfaulted.

Downloads (~2,2 Mb)_ftp://ftp.kernel.org....6.5.7.tar.bz2

ЭЖД, 9.01.2010 - 19:04

ph34r.gif GIT 1.6.6

Из новшеств можно отметить:В новой версии также проведена подготовка к ожидаемому в следующей версии 1.7.0 частичному нарушению совместимости. При использованию конструкций, поведение которых планируется изменить в версии 1.7.0, git теперь выводит предупреждения, позволяя заблаговременно адаптироваться к будущим новшествам и подготовить к ним свои скрипты. В частности, скоро будет запрещено выполнение "git push" в ветках для которых была выполнена команда "

Downloads (~2,2 Mb)_http://www.kernel.org...-1.6.6.tar.bz2

ЭЖД, 21.01.2010 - 19:54

ph34r.gif git 1.6.6.1

Fixes since v1.6.6
--------

* "git blame" did not work well when commit lacked the author name.

* "git branch -a name" wasn't diagnosed as an error.

* "git count-objects" did not handle packfiles that are bigger than 4G on
platforms with 32-bit off_t.

* "git checkout -m other" while on a branch that does not have any commit
segfaulted, instead of failing.

* "git fast-import" choked when fed a tag that do not point at a
commit.

* "git grep" finding from work tree files could have fed garbage to
the underlying regexec(3).

* "git grep -L" didn't show empty files (they should never match, and
they should always appear in -L output as unmatching).

* "git rebase -i" did not abort cleanly if it failed to launch the editor.

* "git reset --hard" did not work correctly when GIT_WORK_TREE environment
variable is used to point at the root of the true work tree.

* http-backend was not listed in the command list in the documentation.

* Building on FreeBSD (both 7 and 8) needs OLD_ICONV set in the Makefile

* "git checkout -m some-branch" while on an unborn branch crashed.

Downloads (~2,3 Mb)_ftp://ftp.kernel.org....6.6.1.tar.bz2

ЭЖД, 11.02.2010 - 19:24

ph34r.gif git 1.6.6.2

Fixes since v1.6.6.2
-----

* recursive merge didn't correctly diagnose its own programming errors,
and instead caused the caller to segfault.

* The new "smart http" aware clients probed the web servers to see if
they support smart http, but did not fall back to dumb http transport
correctly with some servers.

* Time based reflog syntax e.g. "@{yesterday}" didn't diagnose a misspelled
time specification and instead assumed "@{now}".

* "git archive HEAD -- no-such-directory" produced an empty archive
without complaining.

* "git blame -L start,end -- file" misbehaved when given a start that is
larger than the number of lines in the file.

* "git checkout -m" didn't correctly call custom merge backend supplied
by the end user.

* "git config -f " misbehaved when run from a subdirectory.

* "git cvsserver" didn't like having regex metacharacters (e.g. '+') in
CVSROOT environment.

* "git fast-import" did not correctly handle large blobs that may
bust the pack size limit.

* "git gui" is supposed to work even when launched from inside a .git
directory.

* "git gui" misbehaved when applying a hunk that ends with deletion.

* "git imap-send" did not honor imap.preformattedHTML as documented.

* "git log" family incorrectly showed the commit notes unconditionally by
mistake, which was especially irritating when running "git log --oneline".

* "git status" shouldn't require an write access to the repository.

Other minor documentation updates are included.

Downloads (~2,3 Mb)_ftp://ftp.kernel.org....6.6.2.tar.bz2

ЭЖД, 1.03.2010 - 19:40

ph34r.gif git 1.7.0.1

Fixes since v1.7.0
--------

* In a freshly created repository "rev-parse HEAD^0" complained that
it is dangling symref, even though "rev-parse HEAD" didn't.

* "git show :no-such-name" tried to access the index without bounds
check, leading to a potential segfault.

* Message from "git cherry-pick" was harder to read and use than necessary
when it stopped due to conflicting changes.

* We referred to ".git/refs/" throughout the documentation when we
meant to talk about abstract notion of "ref namespace". Because
people's repositories often have packed refs these days, this was
confusing.

* "git diff --output=/path/that/cannot/be/written" did not correctly
error out.

* "git grep -e -pattern-that-begin-with-dash paths..." could not be
spelled as "git grep -- -pattern-that-begin-with-dash paths..." which
would be a GNU way to use "--" as "end of options".

* "git grep" compiled with threading support tried to access an
uninitialized mutex on boxes with a single CPU.

* "git stash pop -q --index" failed because the unnecessary --index
option was propagated to "git stash drop" that is internally run at the
end.

» Git v1.7.0 Release Notes «


Downloads (~2,4 Mb)_ftp://ftp.kernel.org....7.0.1.tar.bz2

ЭЖД, 8.03.2010 - 19:10

ph34r.gif git 1.7.0.2

Fixes since v1.7.0.1
-----

* GIT_PAGER was not honored consistently by some scripted Porcelains, most
notably "git am".

* updating working tree files after telling git to add them to the
index and while it is still working created garbage object files in
the repository without diagnosing it as an error.

* "git bisect -- pathspec..." did not diagnose an error condition properly when
the simplification with given pathspec made the history empty.

* "git rev-list --cherry-pick A...B" now has an obvious optimization when the
histories haven't diverged (i.e. when one end is an ancestor of the other).

* "git diff --quiet -w" did not work as expected.

* "git fast-import" didn't work with a large input, as it lacked support
for producing the pack index in v2 format.

* "git imap-send" didn't use CRLF line endings over the imap protocol
when storing its payload to the draft box, violating RFC 3501.

* "git log --format='%w(x,y,z)%b'" and friends that rewrap message
has been optimized for utf-8 payload.

* Error messages generated on the receiving end did not come back to "git
push".

* "git status" in 1.7.0 lacked the optimization we used to have in 1.6.X series
to speed up scanning of large working tree.

* "gitweb" did not diagnose parsing errors properly while reading tis configuration
file.

Downloads (~2,4 Mb)_ftp://ftp.kernel.org....7.0.2.tar.bz2

ЭЖД, 23.03.2010 - 20:48

ph34r.gif git 1.7.0.3

Fixes since v1.7.0.2
-----
* Object files are created in a more ACL friendly way in repositories
where group permission is ACL controlled.
* "git add -i" didn't handle a deleted path very well.
* "git blame" padded line numbers with one extra SP when the total number
of lines was one less than multiple of ten due to an off-by-one error.
* "git fetch --all/--multi" used to discard information for remotes that
are fetched earlier.
* "git log --author=me --grep=it" tried to find commits that have "it"
or are written by "me", instead of the ones that have "it" _and_ are
written by "me".
* "git log -g branch" misbehaved when there was no entries in the reflog
for the named branch.
* "git mailinfo" (hence "git am") incorrectly removed initial indent from
paragraphs.
* "git prune" and "git reflog" (hence "git gc" as well) didn't honor
an instruction never to expire by setting gc.reflogexpire to never.
* "git push" misbehaved when branch..merge was configured without
matching branch..remote.

Downloads (~2,4 Mb)_ftp://ftp.kernel.org....7.0.3.tar.bz2

ЭЖД, 1.04.2010 - 19:17

ph34r.gif git 1.7.0.4

Fixes since v1.7.0.3
-----

* Optimized ntohl/htonl on big-endian machines were broken.

* Color values given to "color.." configuration can now have
more than one attributes (e.g. "bold ul").

* "git add -u nonexistent-path" did not complain.

* "git apply --whitespace=fix" didn't work well when an early patch in
a patch series adds trailing blank lines and a later one depended on
such a block of blank lines at the end.

* "git fast-export" didn't check error status and stop when marks file
cannot be opened.

* "git format-patch --ignore-if-in-upstream" gave unwarranted errors
when the range was empty, instead of silently finishing.

* "git remote prune" did not detect remote tracking refs that became
dangling correctly.

Downloads (~2,3 Mb)_ftp://ftp.kernel.org....7.0.4.tar.bz2

ЭЖД, 13.04.2010 - 17:34

ph34r.gif git 1.7.0.5

Fixes since v1.7.0.4
-----

* "git daemon" failed to compile on platforms without sockaddr_storage type.

* Output from "git rev-list --pretty=oneline" was unparsable when a
commit did not have any message, which is abnormal but possible in a
repository converted from foreign scm.

* "git stash show " gave an error message
that was not so useful. Reworded the message to " is not a
stash".

* Python scripts in contrib/ area now start with "#!/usr/bin/env python"
to honor user's PATH.

* "git imap-send" used to mistake any line that begins with "From " as a
message separator in format-patch output.

* Smart http server backend failed to report an internal server error and
infinitely looped instead after output pipe was closed.

Downloads (~2,3 Mb)_ftp://ftp.kernel.org....7.0.5.tar.bz2

ЭЖД, 23.04.2010 - 17:20

ph34r.gif git 1.7.0.6

Fixes since v1.7.0.5
-----

* "git diff --stat" used "int" to count the size of differences,
which could result in overflowing.

* "git rev-list --abbrev-commit" defaulted to 40-byte abbreviations, unlike
newer tools in the git toolset.


Downloads (~2,3 Mb)_ftp://ftp.kernel.org....7.0.6.tar.bz2

ЭЖД, 7.07.2010 - 19:29

ph34r.gif Git 1.7.1.1

Fixes since v1.7.1
--------

* Authentication over http transport can now be made lazily, in that the
request can first go to a URL without username, get a 401 response and
then the client will ask for the username to use.

* We used to mistakenly think "../work" is a subdirectory of the current
directory when we are in "../work-xyz".

* The attribute mechanism now allows an entry that uses an attribute
macro that set/unset one attribute, immediately followed by an
overriding setting; this makes attribute macros much easier to use.

* We didn't recognize timezone "Z" as a synonym for "UTC" (75b37e70).

* In 1.7.0, read-tree and user commands that use the mechanism such as
checkout and merge were fixed to handle switching between branches one
of which has a file while the other has a directory at the same path
correctly even when there are some "confusing" pathnames in them. But
the algorithm used for this fix was suboptimal and had a terrible
performance degradation especially in larger trees.

* "git am -3" did not show diagnosis when the patch in the message was corrupt.

* After "git apply --whitespace=fix" removed trailing blank lines in an
patch in a patch series, it failed to apply later patches that depend
on the presence of such blank lines.

* "git bundle --stdin" segfaulted.

* "git checkout" and "git rebase" overwrote paths that are marked "assume
unchanged".

* "git commit --amend" on a commit with an invalid author-name line that
lacks the display name didn't work.

* "git describe" did not tie-break tags that point at the same commit
correctly; newer ones are preferred by paying attention to the
tagger date now.

* "git diff" used to tell underlying xdiff machinery to work very hard to
minimize the output, but this often was spending too many extra cycles
for very little gain.

* "git diff --color" did not paint extended diff headers per line
(i.e. the coloring escape sequence didn't end at the end of line),
which confused "less -R".

* "git fetch" over HTTP verifies the downloaded packfiles more robustly.

* The memory usage by "git index-pack" (run during "git fetch" and "git
push") got leaner.

* "GIT_DIR=foo.git git init --bare bar.git" created foo.git instead of bar.git.

* "git log --abbrev=$num --format='%h' ignored --abbrev=$num.

* "git ls-files ../out/side/cwd" refused to work.

* "git merge --log" used to replace the custom message given by "-m" with
the shortlog, instead of appending to it.

* "git notes copy" without any other argument segfaulted.

* "git pull" accepted "--dry-run", gave it to underlying "git fetch" but
ignored the option itself, resulting in a bogus attempt to merge
unrelated commit.

* "git rebase" did not faithfully reproduce a malformed author ident, that
is often seen in a repository converted from foreign SCMs.

* "git reset --hard" started from a wrong directory and a working tree in
a nonstandard location is in use got confused.

* "git send-email" lacked a way to specify the domainname used in the
EHLO/HELO exchange, causing rejected connection from picky servers.
It learned --smtp-domain option to solve this issue.

* "git send-email" did not declare a content-transfer-encoding and
content-type even when its payload needs to be sent in 8-bit.

* "git show -C -C" and other corner cases lost diff metainfo output
in 1.7.0.

* "git stash" incorrectly lost paths in the working tree that were
previously removed from the index.

* "git status" stopped refreshing the index by mistake in 1.7.1.

* "git status" showed excess "hints" even when advice.statusHints is set to false.

Downloads (~2,3 Mb)_http://kernel.org/pub....7.1.1.tar.bz2

ЭЖД, 24.07.2010 - 14:19

ph34r.gif git 1.7.2

Updates since v1.7.1
-----

* core.eol configuration and text/eol attributes are the new way to control
the end of line conventions for files in the working tree.

* core.autocrlf has been made safer - it will now only handle line
endings for new files and files that are LF-only in the
repository. To normalize content that has been checked in with
CRLF, use the new eol/text attributes.

* The whitespace rules used in "git apply --whitespace" and "git diff"
gained a new member in the family (tab-in-indent) to help projects with
policy to indent only with spaces.

* When working from a subdirectory, by default, git does not look for its
metadirectory ".git" across filesystems, primarily to help people who
have invocations of git in their custom PS1 prompts, as being outside
of a git repository would look for ".git" all the way up to the root
directory, and NFS mounts are often slow. DISCOVERY_ACROSS_FILESYSTEM
environment variable can be used to tell git not to stop at a
filesystem boundary.

* Usage help messages generated by parse-options library (i.e. most
of the Porcelain commands) are sent to the standard output now.

* ':/' notation to look for a commit now takes regular expression
and it is not anchored at the beginning of the commit log message
anymore (this is a backward incompatible change).

* "git" wrapper learned "-c name=value" option to override configuration
variable from the command line.

* Improved portability for various platforms including older SunOS,
HP-UX 10/11, AIX, Tru64, etc. and platforms with Python 2.4.

* The message from "git am -3" has been improved when conflict
resolution ended up making the patch a no-op.

* "git blame" applies the textconv filter to the contents it works
on, when available.

* "git checkout --orphan newbranch" is similar to "-b newbranch" but
prepares to create a root commit that is not connected to any existing
commit.

* "git cherry-pick" learned to pick a range of commits
(e.g. "cherry-pick A..B" and "cherry-pick --stdin"), so did "git
revert"; these do not support the nicer sequencing control "rebase
[-i]" has, though.

* "git cherry-pick" and "git revert" learned --strategy option to specify
the merge strategy to be used when performing three-way merges.

* "git cvsserver" can be told to use pserver; its password file can be
stored outside the repository.

* The output from the textconv filter used by "git diff" can be cached to
speed up their reuse.

* "git diff --word-diff=" extends the existing "--color-words"
option, making it more useful in color-challenged environments.

* The regexp to detect function headers used by "git diff" for PHP has
been enhanced for visibility modifiers (public, protected, etc.) to
better support PHP5.

* "diff.noprefix" configuration variable can be used to implicitly
ask for "diff --no-prefix" behaviour.

* "git for-each-ref" learned "%(objectname:short)" that gives the object
name abbreviated.

* "git format-patch" learned --signature option and format.signature
configuration variable to customize the e-mail signature used in the
output.

* Various options to "git grep" (e.g. --count, --name-only) work better
with binary files.

* "git grep" learned "-Ovi" to open the files with hits in your editor.

* "git help -w" learned "chrome" and "chromium" browsers.

* "git log --decorate" shows commit decorations in various colours.

* "git log --follow " follows across copies (it used to only follow
renames). This may make the processing more expensive.

* "git log --pretty=format: