Commit Graph

61334 Commits

Author SHA1 Message Date
Johannes Schindelin
77073280d5 Merge 'jh/status-v2-porcelain'
Backported onto `maint` by me...

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 17:22:30 +02:00
Jeff Hostetler
af336aeceb status: unit tests for --porcelain=v2
Test porcelain v2 status format.

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-08-09 17:20:05 +02:00
Jeff Hostetler
0915645334 test-lib-functions.sh: Add lf_to_nul
Add lf_to_nul() function to test-lib-functions.

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-08-09 17:19:44 +02:00
Jeff Hostetler
d05bb8aaaf git-status.txt: describe --porcelain=v2 format
Update status manpage to include information about
porcelain v2 format.

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-08-09 17:19:24 +02:00
Jeff Hostetler
8c0cff9a60 status: print branch info with --porcelain=v2 --branch
Expand porcelain v2 output to include branch and tracking
branch information. This includes the commit id, the branch,
the upstream branch, and the ahead and behind counts.

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-08-09 17:19:01 +02:00
Jeff Hostetler
8dcba40646 status: print per-file porcelain v2 status data
Print per-file information in porcelain v2 format.

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-08-09 17:18:36 +02:00
Jeff Hostetler
41f9d92eb6 status: collect per-file data for --porcelain=v2
Collect extra per-file data for porcelain V2 format.

The output of `git status --porcelain` leaves out many
details about the current status that clients might like
to have.  This can force them to be less efficient as they
may need to launch secondary commands (and try to match
the logic within git) to accumulate this extra information.
For example, a GUI IDE might want the file mode to display
the correct icon for a changed item (without having to stat
it afterwards).

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-08-09 17:18:27 +02:00
Jeff Hostetler
6872353b0c status: support --porcelain[=<version>]
Update --porcelain argument to take optional version parameter
to allow multiple porcelain formats to be supported in the future.

The token "v1" is the default value and indicates the traditional
porcelain format.  (The token "1" is an alias for that.)

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-08-09 17:11:28 +02:00
Jeff Hostetler
999dce9020 status: cleanup API to wt_status_print
Refactor the API between builtin/commit.c and wt-status.[ch].

Hide the details of the various wt_*status_print() routines inside
wt-status.c behind a single (new) wt_status_print() routine.
Eliminate the switch statements from builtin/commit.c.
Allow details of new status formats to be isolated within wt-status.c

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-08-09 17:11:28 +02:00
Jeff Hostetler
4df1ff0df3 status: rename long-format print routines
Rename the various wt_status_print*() routines to be
wt_longstatus_print*() to make it clear that these
routines are only concerned with the normal/long
status output and reduce developer confusion as other
status formats are added in the future.

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-08-09 17:11:27 +02:00
Johannes Schindelin
6ac7a1cf02 Merge branch 'consolez'
This fixes an issue where the Git wrapper would terminate upon Ctrl+C,
even in the case when its child process would *not* terminate.

Note: while the original intention was to fix running Git Bash in
ConsoleZ, the bug fix applies also to running

	C:\Program Files\Git\bin\bash -l -i

in a cmd window.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:40 +02:00
Johannes Schindelin
4e6dd6db29 Merge branch 'git-wrapper-interpolate'
There was a bug in the wrapper where it would interpolate incorrectly if
the name of the environment variable to expand was longer than the value.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:40 +02:00
Johannes Schindelin
a34b7237e6 Merge branch 'home-bin' 2016-08-09 16:51:39 +02:00
Johannes Schindelin
89b579d429 Merge branch 'conhost-git-bash' 2016-08-09 16:51:39 +02:00
Johannes Schindelin
8484b9bbfd Merge branch 'bash-redirector' 2016-08-09 16:51:39 +02:00
Johannes Schindelin
8a1df2b4a5 Merge branch 'pinnable'
Part 2/3 of fixing https://github.com/git-for-windows/git/issues/263

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:39 +02:00
Johannes Schindelin
1ecd520349 Merge branch 'git-wrapper--command'
This topic branch adds the --command=<command> option that allows
starting the Git Bash (or Git CMD) with different terminal emulators
than the one encoded via embedded string resources.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:39 +02:00
Johannes Schindelin
86afed781c Merge 'git-wrapper' into HEAD
Use msysGit's `git-wrapper` instead of the builtins. This works around
two issues:

- when the file system does not allow hard links, we would waste over
  800 megabyte by having 109 copies of a multi-megabyte executable

- even when the file system allows hard links, the Windows Explorer
  counts the disk usage as if it did not. Many users complained about
  Git for Windows using too much space (when it actually did not). We
  can easily avoid those user complaints by merging this branch.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:38 +02:00
Johannes Schindelin
287a84a4d6 Merge 'gcc-6' into HEAD 2016-08-09 16:51:38 +02:00
Johannes Schindelin
e3a8a13084 Merge pull request #797 from glhez/master
`git bundle create <bundle>` leaks handle the revlist is empty.
2016-08-09 16:51:38 +02:00
Johannes Schindelin
3afe86d645 Merge 'release-gc-repack' into HEAD 2016-08-09 16:51:38 +02:00
Johannes Schindelin
e67e204bd4 Merge pull request #755 from bwijen/master
Prevent child processes from inheriting a handle to index.lock
2016-08-09 16:51:38 +02:00
Johannes Schindelin
ca1d47dceb Merge pull request #726 from orgads/git-gui-preserve-author-windows
git-gui: Do not reset author details on amend
2016-08-09 16:51:38 +02:00
Johannes Schindelin
2bf77e84bb Merge branch 'spawn-with-spaces'
This change lets us spawn .bat scripts whose paths contain spaces.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:37 +02:00
Johannes Schindelin
56f6eca651 Merge pull request #677 from yaras/fix-git-675
Fixed masking username with asterisks when reading credentials
2016-08-09 16:51:34 +02:00
Johannes Schindelin
71079099fa mingw: support spawning programs containing spaces in their names
The CreateProcessW() function does not really support spaces in its
first argument, lpApplicationName. But it supports passing NULL as
lpApplicationName, which makes it figure out the application from the
(possibly quoted) first argument of lpCommandLine.

Let's use that trick (if we are certain that the first argument matches
the executable's path) to support launching programs whose path contains
spaces.

This fixes https://github.com/git-for-windows/git/issue/692

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:34 +02:00
Johannes Schindelin
dd40762380 Merge pull request #665 from yaras/fix-git-664
Fix initial git gui message encoding
2016-08-09 16:51:34 +02:00
Johannes Schindelin
6a5419816a Merge 'git-gui-add-2nd-line' into HEAD 2016-08-09 16:51:34 +02:00
Johannes Schindelin
8eae44ba7e Merge pull request #620 from sidecut/sidecut-gitk-list-references-window-width
Make the "list references" default window width wider
2016-08-09 16:51:33 +02:00
Johannes Schindelin
2066226497 Merge branch 'gitk-cursor-keys'
This patch needs to be contributed to gitk proper, of course.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:33 +02:00
Johannes Schindelin
9064da006a Merge branch 'clean-long-paths'
This addresses https://github.com/git-for-windows/git/issues/521

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:33 +02:00
Johannes Schindelin
6516cc9ac6 Merge 'aslr' into HEAD
Address Space Layout Randomization (ASLR) allows executables' memory
layout to change at random between runs, and therefore offers a quite
decent protection against many attacks.

We enable ASLR because MSYS2's C compiler offers support for ASLR, and
whatever performance impact it has is neglible, according to
https://insights.sei.cmu.edu/cert/2014/02/differences-between-aslr-on-windows-and-linux.html

This merges the part of https://github.com/git-for-windows/git/pull/612
that does not break Git ;-)

This fixes https://github.com/git-for-windows/git/issues/608

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:33 +02:00
Johannes Schindelin
1f664b2400 Merge 'unc-alternates' into HEAD 2016-08-09 16:51:33 +02:00
Johannes Schindelin
89ddd3745a Merge pull request #552 from duncansmart/fix-vcproj-gen
Fix Visual Studio .sln/.vcproj generation.
2016-08-09 16:51:32 +02:00
Johannes Schindelin
00175cf8c3 Merge 'mingw/default-ident'
Improve the default user name & email logic

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:32 +02:00
Johannes Schindelin
7db7c48a90 Merge branch 'msys2-git-gui'
This topic branch addresses the bug where Git for Windows 2.x' Git GUI
failed to generate a working shortcut via Repository>Create Desktop
Shortcut.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:32 +02:00
Johannes Schindelin
db43b8f015 Merge pull request #443 from kblees/kb/nanosecond-file-times-v2.5.3
nanosecond file times for v2.5.3
2016-08-09 16:51:32 +02:00
Johannes Schindelin
acab9c580d Merge pull request #305 from dscho/msysgit_issues_182
Allow `add -p` and `add -i` with a large number of files
2016-08-09 16:51:32 +02:00
Johannes Schindelin
9dfe9605b6 Merge pull request #246 from uecasm/patch-1
Verify memoized files can be reloaded before using them
2016-08-09 16:51:31 +02:00
Johannes Schindelin
bf083d8bea Merge branch 'program-data-config'
This branch introduces support for reading the "Windows-wide" Git
configuration from `%PROGRAMDATA%\Git\config`. As these settings are
intended to be shared between *all* Git-related software, that config
file takes an even lower precedence than `$(prefix)/etc/gitconfig`.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:31 +02:00
Johannes Schindelin
2d7df21c39 Merge pull request #159 from dscho/vagrant
Add Vagrant support (easy Linux VM setup)
2016-08-09 16:51:31 +02:00
Johannes Schindelin
a9c3d2e916 Merge 'mingw-getcwd' into HEAD 2016-08-09 16:51:31 +02:00
Johannes Schindelin
096549c20d Merge pull request #156 from kblees/kb/symlinks
Symlink support
2016-08-09 16:51:31 +02:00
Johannes Schindelin
e9d8b30bfe Merge 'sideband-bug' into HEAD
This works around the push-over-git-protocol issues pointed out in
https://github.com/msysgit/git/issues/101.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:31 +02:00
Johannes Schindelin
4c007b7245 Merge 'fix-is-exe' into HEAD 2016-08-09 16:51:30 +02:00
Johannes Schindelin
77707121ea Merge 'fix-externals' into HEAD 2016-08-09 16:51:30 +02:00
Johannes Schindelin
09ce218898 Merge 'remote-hg-prerequisites' into HEAD
These fixes were necessary for Sverre Rabbelier's remote-hg to work,
but for some magic reason they are not necessary for the current
remote-hg. Makes you wonder how that one gets away with it.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:30 +02:00
Johannes Schindelin
6ddce6001f Merge 'win-tests-fixes' into HEAD 2016-08-09 16:51:30 +02:00
Johannes Schindelin
9b4e1c0a16 Merge 'msys2' into HEAD
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2016-08-09 16:51:30 +02:00
Johannes Schindelin
392681236b Merge 'jberezanski/wincred-sso-r2' into HEAD 2016-08-09 16:51:29 +02:00