Commit Graph

47063 Commits

Author SHA1 Message Date
Karsten Blees
a9586f2a02 Merge 'jberezanski/wincred-sso-r2' into HEAD 2014-08-16 03:03:27 +02:00
Karsten Blees
b186a66255 Merge 'gitweb-syntax' into HEAD 2014-08-16 03:03:26 +02:00
Karsten Blees
39bd86ad0a Merge 'gitk' into HEAD 2014-08-16 03:03:26 +02:00
Karsten Blees
3ac701b049 Merge 'git-gui' into HEAD 2014-08-16 03:03:25 +02:00
Karsten Blees
19626782c3 Merge 'deny-current-branch' into HEAD 2014-08-16 03:03:24 +02:00
Karsten Blees
03bc917141 Merge 'criss-cross-merge' into HEAD 2014-08-16 03:03:24 +02:00
Karsten Blees
516b6299a6 Merge 'am-submodules' into HEAD 2014-08-16 03:03:23 +02:00
Karsten Blees
9af43a3e89 Merge 'hide-dotgit' into HEAD 2014-08-16 03:03:23 +02:00
Karsten Blees
ffa986958f Merge 'unicode' into HEAD 2014-08-16 03:03:22 +02:00
Karsten Blees
24bbb38a43 Merge 'refs/rewritten/junio/notyet' into HEAD 2014-08-16 03:03:22 +02:00
Jakub Bereżański
52ab6cbbc3 wincred: handle empty username/password correctly
Empty (length 0) usernames and/or passwords, when saved in the Windows
Credential Manager, come back as null when reading the credential.

One use case for such empty credentials is with NTLM authentication, where
empty username and password instruct libcurl to authenticate using the
credentials of the currently logged-on user (single sign-on).

When locating the relevant credentials, make empty username match null.
When outputting the credentials, handle nulls correctly.

Signed-off-by: Jakub Bereżański <kuba@berezanscy.pl>
2014-08-16 02:59:53 +02:00
Jakub Bereżański
0dd0cfbcb6 t0302: check helper can handle empty credentials
Make sure the helper does not crash when blank username and password is
provided. If the helper can save such credentials, it should be able to
read them back.

Signed-off-by: Jakub Bereżański <kuba@berezanscy.pl>
2014-08-16 02:59:52 +02:00
Johannes Schindelin
c61f812cc1 gitweb (SyntaxHighlighter): interpret #l<line-number>
It is pretty convenient to refer to a line number by appending, say,
highlighter, too.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:51 +02:00
Johannes Schindelin
2d8053b226 Only switch on the line number toggle when highlighting is activated
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:50 +02:00
Johannes Schindelin
26109b246d Gitweb: add support for Alex Gorbatchev's SyntaxHighlighter in Javascript
Gitweb is not exactly what you would call server-friendly, so let's
offload one more task onto the client.

To enable this, put something like this into your gitweb_config.perl:

	$feature{'syntaxhighlighter_js'}{'default'} = [{
		url => '/SyntaxHighlighter/',
		style => 'Django',
		theme => 'FadeToGrey'
	}];

and clone git://github.com/alexgorbatchev/SyntaxHighlighter into the
directory you specified via the 'url' parameter.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:50 +02:00
Johannes Schindelin
b96a6fdc83 Gitweb: make line number toggling work for Firefox and Safari
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:49 +02:00
Johannes Schindelin
482a93fa08 gitweb: Allow line number toggling with Javascript
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:49 +02:00
Sebastian Schuberth
a325ef9c04 gitk: Use an external icon file on Windows
Git for Windows now ships with the new Git icon from git-scm.com. Use that
icon file if it exists instead of the old procedurally drawn one.

This patch was sent upstream but so far no decision on its inclusion was
made, so commit it to our fork.

Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com>
2014-08-16 02:59:47 +02:00
Chris West (Faux)
ffa28b4188 Fix another invocation of git from gitk with an overly long command-line
Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com>
2014-08-16 02:59:47 +02:00
Johannes Schindelin
efd5f2ae3c Work around the command line limit on Windows
On Windows, there are dramatic problems when a command line grows
beyond PATH_MAX, which is restricted to 8191 characters on XP and
later (according to http://support.microsoft.com/kb/830473).

Work around this by just cutting off the command line at that length
(actually, at a space boundary) in the hope that only negative
refs are chucked: gitk will then do unnecessary work, but that is
still better than flashing the gitk window and exiting with exit
status 5 (which no Windows user is able to make sense of).

The first fix caused Tcl to fail to compile the regexp, see msysGit issue
427. Here is another fix without using regexp, and using a more relaxed
command line length limit to fix the original issue 387.

Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com>
Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:46 +02:00
Johannes Schindelin
b5eb4a41de git gui: set GIT_ASKPASS=git-gui--askpass if not set yet
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:45 +02:00
Heiko Voigt
56cda11a8a git-gui: provide question helper for retry fallback on Windows
Make use of the new environment variable GIT_ASK_YESNO to support the
recently implemented fallback in case unlink, rename or rmdir fail for
files in use on Windows. The added dialog will present a yes/no question
to the the user which will currently be used by the windows compat layer
to let the user retry a failed file operation.

Signed-off-by: Heiko Voigt <hvoigt@hvoigt.net>
2014-08-16 02:59:44 +02:00
Heiko Voigt
0befca796c Revert "git-gui: set GIT_DIR and GIT_WORK_TREE after setup"
This reverts commit a9fa11fe5b.
2014-08-16 02:59:44 +02:00
Johannes Schindelin
af84456c05 Let deny.currentBranch=updateInstead ignore submodules
They are not affected by the update anyway.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:42 +02:00
Johannes Schindelin
f6ef373fb8 Add a few more values for receive.denyCurrentBranch
For a long time, this developer thought that Git's insistence that
pushing into the current branch is evil was completely merited.

Just for fun, the original patch tried to show people that Git is
correct to forbid that, and that it causes more trouble than it does
good when Git allows you to try to update the working tree for
fast-forwards, or to detach the HEAD, depending on some config settings.

To the developer's surprise, the opposite was shown.

So here is the support for two new options you can give the config
variable receive.denyCurrentBranch:

'updateInstead':
	Try to merge the working tree with the new tip of the branch
	(which can lead to really horrible merge conflicts).

'detachInstead':
	Detach the HEAD, thereby avoiding a disagreement between the
	HEAD and the index (as well as the working tree), possibly
	leaving the local user wondering how on earth her HEAD became
	so detached.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:42 +02:00
Johannes Sixt
dcfb24131b criss cross rename failure workaround
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:39 +02:00
Johannes Schindelin
1a5a5e4593 git am: ignore dirty submodules
This fixes a rebase in the presence of dirty submodules. This is
orthogonal to the application of patches changing submodules.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:38 +02:00
Pat Thoyts
f8b7f55d2c mingw: add tests for the hidden attribute on the git directory
With msysGit the .git directory is supposed to be hidden, unless it is
a bare git repository. Test this.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
2014-08-16 02:59:36 +02:00
Johannes Schindelin
dbb22e6d09 When initializing .git/, record the current setting of core.hideDotFiles
This is on Windows only, of course.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:36 +02:00
Erik Faye-Lund
c0d38ef723 core.hidedotfiles: hide '.git' dir by default
At least for cross-platform projects, it makes sense to hide the
files starting with a dot, as this is the behavior on Unix/MacOSX.

However, at least Eclipse has problems interpreting the hidden flag
correctly, so the default is to hide only the .git/ directory.

The config setting core.hideDotFiles therefore supports not only
'true' and 'false', but also 'dotGitOnly'.

[jes: clarified the commit message, made git init respect the setting
by marking the .git/ directory only after reading the config, and added
documentation, and rebased on top of current junio/next]

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2014-08-16 02:59:35 +02:00
Karsten Blees
b7d7da5763 Unicode file name support (gitk and git-gui)
Assumes file names in git tree objects are UTF-8 encoded.

On most unix systems, the system encoding (and thus the TCL system
encoding) will be UTF-8, so file names will be displayed correctly.

On Windows, it is impossible to set the system encoding to UTF-8. Changing
the TCL system encoding (via 'encoding system ...', e.g. in the startup
code) is explicitly discouraged by the TCL docs.

Change gitk and git-gui functions dealing with file names to always convert
from and to UTF-8.

Signed-off-by: Karsten Blees <blees@dcon.de>
2014-08-16 02:59:33 +02:00
Erik Faye-Lund
c5d67b174e Makefile: do not depend on curl-config
MinGW builds of cURL does not ship with curl-config unless built
with the autoconf based build system, which is not the practice
recommended by the documentation. MsysGit has had issues with
binaries of that sort, so it has switched away from autoconf-based
cURL-builds.

Unfortunately, broke pushing over WebDAV on Windows, because
http-push.c depends on cURL's multi-threaded API, which we could
not determine the presence of any more.

Since troublesome curl-versions are ancient, and not even present
in RedHat 5, let's just assume cURL is capable instead of doing a
non-robust check.

Instead, add a check for curl_multi_init to our configure-script,
for those on ancient system. They probably already need to do the
configure-dance anyway.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
2014-08-16 02:59:32 +02:00
Karsten Blees
20ba112c95 Start the merging-rebase to v2.1.0
This commit starts the rebase of ec765f6 to 7452b4b
2014-08-16 02:59:30 +02:00
Junio C Hamano
6c4ab27f23 Git 2.1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
v2.1.0
2014-08-15 15:09:12 -07:00
Johannes Sixt
41ca19b6a6 tests: fix negated test_i18ngrep calls
The helper function test_i18ngrep pretends that it found the expected
results when it is running under GETTEXT_POISON. For this reason, it must
not be used negated like so

   ! test_i18ngrep foo bar

because the test case would fail under GETTEXT_POISON. The function offers
a special syntax to test that a pattern is *not* found:

   test_i18ngrep ! foo bar

Convert incorrect uses to this syntax.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-08-13 13:12:06 -07:00
Junio C Hamano
67de23ddb1 Merge branch 'master' of git://ozlabs.org/~paulus/gitk
* 'master' of git://ozlabs.org/~paulus/gitk:
  gitk: Updated Bulgarian translation (302t,0f,0u)
  gitk: Add keybinding to switch to parent commit
2014-08-10 11:03:03 -07:00
Junio C Hamano
f82887f290 Git 2.1-rc2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
v2.1.0-rc2
2014-08-08 13:52:16 -07:00
Alexander Shopov
09898e7c3b gitk: Updated Bulgarian translation (302t,0f,0u)
Signed-off-by: Alexander Shopov <ash@kambanaria.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2014-08-08 16:39:30 +10:00
Max Kirillov
d4ec30b24a gitk: Add keybinding to switch to parent commit
Signed-off-by: Max Kirillov <max@max630.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2014-08-08 16:39:02 +10:00
Junio C Hamano
764c739c16 Merge branch 'mb/relnotes-2.1'
* mb/relnotes-2.1:
  Release notes: grammatical fixes
  RelNotes: no more check_ref_format micro-optimization
2014-08-07 09:44:17 -07:00
Marc Branchaud
5261ec5d5d Release notes: grammatical fixes
Signed-off-by: Marc Branchaud <marcnarc@xiplink.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-08-07 09:44:05 -07:00
Stefan Beller
663d096c24 various contrib: Fix links in man pages
Inspired by 2147fa7e (2014-07-31 git-push: fix link in man page),
I grepped through the whole tree searching for 'gitlink:' occurrences.

Signed-off-by: Stefan Beller <stefanbeller@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-08-07 09:43:21 -07:00
Junio C Hamano
f54d3c6d7c RelNotes: no more check_ref_format micro-optimization
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-08-05 11:45:09 -07:00
Junio C Hamano
7b69fcb181 Git 2.1.0-rc1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
v2.1.0-rc1
2014-08-04 14:05:06 -07:00
Junio C Hamano
b16665e832 Merge branch 'tf/maint-doc-push'
* tf/maint-doc-push:
  git-push: fix link in man page
2014-08-04 14:03:45 -07:00
Junio C Hamano
18bd789a18 Merge branch 'ta/doc-config'
* ta/doc-config:
  add documentation for writing config files
2014-08-04 14:03:25 -07:00
Tony Finch
2147fa7e19 git-push: fix link in man page
Signed-off-by: Tony Finch <dot@dotat.at>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-07-31 10:17:37 -07:00
Junio C Hamano
aa544bfbc6 Sync with 2.0.4
* maint:
  Git 2.0.4
  commit --amend: test specifies authorship but forgets to check
2014-07-30 14:25:46 -07:00
Junio C Hamano
aa0ba07a02 Update draft release notes to 2.1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2014-07-30 14:25:14 -07:00
Junio C Hamano
0d9cb2d14e Merge branch 'jk/more-push-completion'
* jk/more-push-completion:
  completion: complete `git push --force-with-lease=`
  completion: add some missing options to `git push`
  completion: complete "unstuck" `git push --recurse-submodules`
2014-07-30 14:21:14 -07:00