1
0
mirror of https://github.com/git/git.git synced 2024-10-06 04:01:26 +02:00
Commit Graph

8118 Commits

Author SHA1 Message Date
Junio C Hamano
3c23d66fc3 t9200: do not test -x bit if the filesystem does not support it.
The last test in t9200 wants to see if executable bit is
retained, which has no chance of succeeding on a filesystem that
does not handle executable bit correctly.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31 14:25:52 -08:00
Junio C Hamano
1a91ebf917 t9200: Re-code non-ascii path test in UTF-8
For the purpose of this test we do not really care if the paths
are in latin-1, but people on Cygwin seem to be having problem
on foreign-looking pathnames that do not play well with their
locale.

Let's try to re-code them in UTF-8 and see who screams,
thanks, or reports no-improvements.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31 14:21:48 -08:00
Aneesh Kumar K.V
8933364da1 Update git-cat-file documentation
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31 13:32:38 -08:00
Junio C Hamano
84a978f118 Documentation: "git-checkout <tree> <path>" takes any tree-ish
Especially, it is not limited to branch.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31 13:30:54 -08:00
David Kågedal
6e598c326d Improved error message from git-rebase
If the index wasn't clean, git-rebase would simply show the output from
git-diff-index with no further comment to the user.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31 13:16:52 -08:00
Alex Riesen
9ebe6cf953 Fix git-update-index to work with relative pathnames.
In particular, it fixes the following (typical for cygwin) problem:

    $ git-update-index --chmod=-x ../wrapper/Jamfile
    fatal: git-update-index: cannot chmod -x '../wrapper/Jamfile'

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31 13:14:32 -08:00
Shawn O. Pearce
4a91a1f37e Escape --upload-pack from expr.
Recent commit ae1dffcb28ee89a23f8d2747be65e17c8eab1690 by Junio
changed the way --upload-pack was passed around between clone,
fetch and ls-remote and modified the handling of the command
line parameter parsing.

Unfortunately FreeBSD 6.1 insists that the expression

  expr --upload-pack=git-upload-pack : '-[^=]*=\(.*\)'

is illegal, as the --upload-pack option is not supported by their
implementation of expr.

Elsewhere in Git we use z as a leading prefix of both arguments,
ensuring the -- isn't seen by expr.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31 13:09:58 -08:00
Shawn O. Pearce
76f8a302c7 Don't coredump on bad refs in update-server-info.
Apparently if we are unable to parse an object update-server-info
coredumps, as it doesn't bother to check the return value of its
call to parse_object.

Instead of coredumping, skip the ref.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31 13:09:58 -08:00
Nicolas Pitre
d117452a80 tone down the detached head warning
This is not meant to frighten people or even to suggest they might be
doing something wrong, but rather to notify them of a state change and
provide a likely option in the case this state was entered by mistake.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31 13:09:57 -08:00
Junio C Hamano
63460f285c Fix git-tag -u
... which I broke when we introduced user.signingkey configuration.
There was no reason to add a new variable keyid to the script.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-30 21:03:11 -08:00
J. Bruce Fields
0b375ab0a5 user-manual: todo's
Update todo's.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-30 12:48:48 -05:00
J. Bruce Fields
a8cd1402f0 user-manual: point to README for gitweb information
I'd like complete gitweb setup instructions some day, but for now just
refer to the gitweb README.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-30 12:43:36 -05:00
Shawn O. Pearce
76db9dec81 Merge branch 'master' into sp/gfi
git-fast-import requires use of inttypes.h, but the master branch has
added it to git-compat-util differently than git-fast-import originally
had used it.  This merge back of master to the fast-import topic is to
get (and use) inttypes.h the way master is using it.

This is a partially evil merge to remove the call to setup_ident(),
as the master branch now contains a change which makes this implicit
and therefore removed the function declaration. (commit 01754769).

Conflicts:

	git-compat-util.h
2007-01-30 11:07:24 -05:00
Aneesh Kumar K.V
73a2acc0a0 blameview: Use git-cat-file to read the file content.
Fix blameview to use git-cat-file to read the file content.
This make sure we show the right content when we have modified
file in the working directory which is not committed.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-30 02:32:28 -08:00
Santi Béjar
153e98d263 git-fetch: Allow fetching the remote HEAD
... with:

$ git fetch ${remote} HEAD

Also

$ git fetch ${remote} :${localref}

worked, but

$ git fetch ${remote} HEAD:{localref}

didn't. Now both are equivalent.

Signed-off-by: Santi Béjar <sbejar@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-30 02:30:25 -08:00
Junio C Hamano
3740b04f6c git-send-email: remove debugging output.
rfc2047 unquoter spitted out an annoying "- unquoted" which was
added during debugging but I forgot to remove.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-30 02:30:25 -08:00
Johannes Sixt
f8306418a6 Add a missing fork() error check.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-30 02:30:25 -08:00
Junio C Hamano
1732a1fd94 git-blame: somewhat better commenting.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-29 19:41:21 -08:00
Mark Wooding
b4dfefe00f Make fsck and fsck-objects be builtins.
The earlier change df391b192 to rename fsck-objects to fsck broke
fsck-objects.  This should fix it again.

Signed-off-by: Mark Wooding <mdw@distorted.org.uk>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-29 09:36:21 -08:00
Junio C Hamano
dbaa06a2b0 git-commit -s: no extra space when sign-offs appear at the end already.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-29 01:06:27 -08:00
Simon 'corecode' Schubert
def2747d0e Replace perl code with pure shell code
Signed-off-by: Simon 'corecode' Schubert <corecode@fs.ei.tum.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-29 01:05:01 -08:00
Junio C Hamano
a2f9fe92eb lock_any_ref_for_update(): do not accept malformatted refs.
We used to use lock_any_ref_for_update() because the command
needs to also update HEAD (which is not under refs/, so
lock_ref_sha1() cannot be used).  The function however did not
check for refs with illegal characters in them.

Use check_ref_format() to catch malformed refs.  For this check,
we specifically do not want to say having less than two levels
in the name is illegal to allow HEAD (and perhaps other special
refs in the future).

Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-29 00:57:07 -08:00
Junio C Hamano
036be17e0a Two small typofixes.
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-29 02:18:53 -05:00
J. Bruce Fields
d55ae921ce user-manual: SHA1 -> object name
Prefer "object name" to SHA1, at least in higher level documentation.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29 02:16:45 -05:00
J. Bruce Fields
4a7979ca82 user-manual: document git-show-branch example
Document Junio's show-branch trick for finding out which tags are
descendents of a given comit.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29 02:00:35 -05:00
J. Bruce Fields
9a241220fd user-manual: minor "TODO" updates
I still really want a section on interoperability with CVS, subversion,
etc., but I'm not getting around to it very fast, so just add this to
the TODO section for now.  And a few other minor todo updates.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29 01:43:33 -05:00
J. Bruce Fields
1191ee1824 user-manual: rewrap a few long lines
Rewrap some long lines.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29 01:33:55 -05:00
J. Bruce Fields
559e4d7a0d user-manual: reflogs, other recovery
Add a brief discussion of reflogs.  Also recovery of dangling commits
seems to fit in here, so move some of the discussion out of Linus's
email to here.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29 01:31:35 -05:00
J. Bruce Fields
61b41790c4 user-manual: fix a header level
Oops.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29 00:45:33 -05:00
J. Bruce Fields
988b27d3f5 user-manual: typo fix
Oops

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29 00:33:57 -05:00
J. Bruce Fields
fc90c536dc user-manual: add references to git-config man page
Direct editing of config files may be more natural for users than using
the git-config commandline; but we should still reference the
git-config man page when we describe such editing, so people know where
to go for details on the config file syntax and meanings of the
variables.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29 00:17:51 -05:00
J. Bruce Fields
9d13bda3ff user-manual: repo-config -> config
Looks like we're going to allow git-config as the preferred alias to
git-repo-config, so let's document that instead.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-28 23:50:22 -05:00
J. Bruce Fields
04e50e9457 user-manual: fsck-objects -> fsck
There seems to be an agreement to rename fsck-objects to fsck.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-28 23:31:47 -05:00
J. Bruce Fields
21dcb3b7ab user-manual: git-fsck, dangling objects
Initial import of fsck and dangling objects discussion, mostly lifted from
an email from Linus.

Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-28 23:29:19 -05:00
Junio C Hamano
df391b192d git-fsck-objects is now synonym to git-fsck
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 16:33:58 -08:00
Tom Prince
e0d10e1c63 [PATCH] Rename git-repo-config to git-config.
Signed-off-by: Tom Prince <tom.prince@ualberta.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 16:16:53 -08:00
Andy Parkins
829a686f1b Heavily expanded update hook to send more useful emails than the old hook
I know it's only an example, but having this might save someone else the
trouble of writing an enhanced version for themselves.

It basically does the same job as the old update hook, but with these
differences:
 * The recipients list is read from the repository config file from
   hooks.mailinglist
 * Updating unannotated tags can be allowed by setting
   hooks.allowunannotated
 * Announcement emails (via annotated tag creation) can be sent to a
   different mailing list by setting hooks.announcelist
 * Output email is more verbose and generates specific content depending
   on whether the ref is a tag, an annotated tag, a branch, or a
   tracking branch
 * The email is easier to filter; the subject line is prefixed with
   [SCM] and a project description pulled from the "description" file
 * It catches (and displays differently) branch updates that are
   performed with a --force

Obviously, it's nothing that clever - it's the update hook I use on my
repositories but I've tried to keep it general, and tried to make the
output always relevant to the type of update.

Signed-off-by: Andy Parkins <andyparkins@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 14:38:11 -08:00
Andy Parkins
a69aba6af3 UNIX reference time of 1970-01-01 00:00 is UTC timezone, not local time zone
I got bitten because in the UK (where one would expect 1970-01-01 00:00
to be UTC 0) some politicians decided to mess around with daylight
savings time from 1968 to 1971; it was permanently BST (+0100).  That
means that on my computer the following is true:

	$ date --date="1970-01-01 00:00" +"%F %T %z (%Z)"
	1970-01-01 00:00:00 +0100 (BST)

This of course means that the --date argument to date is specified in
local time, not UTC.  So when the hooks--update script does this:

	date=$(date --date="1970-01-01 00:00:00 $ts seconds")

It's actually saying (in my timezone) "1970-01-01 01:00:00 UTC" + $ts.
Clearly this is wrong.  The UNIX epoch started at midnight UTC not 1am
UTC.

This leads to the tagged time in hooks--update being shown as one hour
earlier than the true tagged time (in my timezone).  The problem would
be worse for other timezones.  For a +1300 timezone on 1970-01-01, the
tagged time would be 13 hours earlier.  Oops.

The solution is to force the reference time to UTC, which is what this
patch does.  In my timezone:

	$ date --date="1970-01-01 00:00 +0000" +"%F %T %z (%Z)"
	1970-01-01 01:00:00 +0100 (BST)

Much better.

Signed-off-by: Andy Parkins <andyparkins@gmail.com>
2007-01-28 14:35:50 -08:00
Shawn O. Pearce
5558e55c06 Teach for-each-ref about a little language called Tcl.
Love it or hate it, some people actually still program in Tcl.  Some
of those programs are meant for interfacing with Git.  Programs such as
gitk and git-gui.  It may be useful to have Tcl-safe output available
from for-each-ref, just like shell, Perl and Python already enjoy.

Thanks to Sergey Vlasov for pointing out the horrible flaws in the
first and second version of this patch, and steering me in the right
direction for Tcl value quoting.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 13:00:26 -08:00
Jeff King
cace16fdcb Add a sample program 'blameview' to show how to use git-blame --incremental
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 12:53:26 -08:00
Linus Torvalds
4b3b1e1e48 git-push through git protocol
This allows pushing over the git:// protocol, and while it's not
authenticated, it could make sense from within a firewalled
setup where nobody but trusted internal people can reach the git
port.  git-daemon is possibly easier and faster to set up in the
kind of situation where you set up git instead of CVS inside a
company.

"git-receive-pack" is disabled by default, so you need to enable it
explicitly by starting git-daemon with the "--enable=receive-pack"
command line argument, or by having your config enable it automatically.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 12:31:56 -08:00
Junio C Hamano
57e7a0a494 Document 'git-blame --incremental'
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 12:26:21 -08:00
Mark Wooding
4f193f20a3 Documentation/config.txt: Fix documentation of colour config tweaks.
* The description of valid colour specifications was rather
    incomplete, so fix it so that it actually describes colour specs as
    accepted by color_parse().

  * The list of colour items allowed in color.diff.BLAH was missing the
    `commit' and `whitespace' entries.

Signed-off-by: Mark Wooding <mdw@distorted.org.uk>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 11:06:59 -08:00
Mark Wooding
c3e821c636 wt-status: Actually accept `color.status.BLAH' configuration variables.
A stupid typo stopped this from working.

Signed-off-by: Mark Wooding <mdw@distorted.org.uk>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 11:04:44 -08:00
Ren,Ai(B Scharfe
4f0219a4c7 git-blame --incremental: don't use pager
Starting a pager defeats the purpose of the incremental output
mode.  This changes git-blame to only paginate if --incremental
was not given.

git -p blame --incremental still starts the pager, though.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 11:00:57 -08:00
Nicolas Pitre
a7e4fbf990 add reflog when moving HEAD to a new branch
Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 02:16:46 -08:00
Junio C Hamano
47fc52e287 create_symref(): do not assume pathname from git_path() persists long enough
Being lazy to rely on the cycling N buffers mkpath() and friends
return is nice in general, but it makes it too easy to introduce
new bugs that are "mysterious".

Introduction of read_ref() in create_symref() after calling
git_path() to get the git_HEAD value (i.e. the path to create a
new symref at) consumed more than the available buffers and
broke a later call to mkpath() that derives lockpath from it.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 02:16:46 -08:00
Nicolas Pitre
8b5157e407 add logref support to git-symbolic-ref
Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 02:16:46 -08:00
Nicolas Pitre
41b625b047 move create_symref() past log_ref_write()
This doesn't change the code at all.  It is done to make the next patch
more obvious.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 02:16:46 -08:00
Nicolas Pitre
e1dde3d06c add reflog entries for HEAD when detached
Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28 02:16:46 -08:00