summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2007-02-01Use "git checkout -q" in git-bisectLibravatar Junio C Hamano1-1/+1
Converts one use of git-checkout in git-bisect not to say "switching to branch". It looks like all the other cases it is friendlier to give notice to the end user. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-01add a quiet option to git-checkoutLibravatar Nicolas Pitre2-10/+18
Those new messages are certainly nice, but there might be cases where they are simply unwelcome, like when git-commit is used within scripts. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-01reword the detached head message a little againLibravatar Nicolas Pitre1-1/+1
Seems clearer this way, to me at least. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-02-01detached HEAD -- finishing touchesLibravatar Junio C Hamano1-2/+8
This updates "git-checkout" to report which branch you are switching to. Especially for people who do not use __git_ps1 from contrib/completion/git-completion.bash this would give a friendlier feedback of what is going on, and should make the reminder message much less scary. Here is a sample session (the prompt tells which branch I am on). * I have some local modification and realize that the change deserves to be on its own new topic branch. [git.git (master)]$ git diff --stat git-checkout.sh | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-) * So I switch to a new branch. I get a listing of local modifications and assuring "Switched to a new branch" message. [git.git (master)]$ git checkout -b jc/checkout M git-checkout.sh Switched to a new branch "jc/checkout" * If I switch back to "master", I get essentially the same. [git.git (jc/checkout)]$ git checkout master M git-checkout.sh Switched to branch "master" * Detaching head would say which commit I am at and reminds me that I am not on any branch (not that I would detach my HEAD while keeping precious local changes around in any real-world workflow -- this is just a sample session). [git.git (master)]$ git checkout master^ M git-checkout.sh Note: you are not on any branch and are at commit "master^" If you want to create a new branch from this checkout, you may do so (now or later) by using -b with the checkout command again. Example: git checkout -b <new_branch_name> * Coming back to an attached state can lose the detached HEAD, so I get warned and stopped. [git.git]$ git checkout master You are not on any branch and switching to branch 'master' may lose your changes. At this point, you can do one of two things: (1) Decide it is Ok and say 'git checkout -f master'; (2) Start a new branch from the current commit, by saying 'git checkout -b <branch-name>'. Leaving your HEAD detached; not switching to branch 'master'. * Moving around while my HEAD is detached is Ok. I still get the list of local modifications. [git.git]$ git checkout master^0 M git-checkout.sh * The previous step that switched to the tip commit is an obscure but useful trick. My HEAD is still detached but now it is pointed at by an existing ref, so I can come back safely. [git.git]$ git checkout master M git-checkout.sh Switched to branch "master" * And we are back on the "master" branch. [git.git (master)]$ exit Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31GIT v1.5.0-rc3Libravatar Junio C Hamano1-1/+1
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31Do not use hardcoded path to xhmtl.xsl to generate user's manualLibravatar Junio C Hamano1-1/+1
It does not seem to need it either and gives an error on FC5 I use at kernel.org to cut documentation tarballs, so remove it in the meantime. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31git main documentation: point at the user's manual.Libravatar Junio C Hamano1-0/+3
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31Merge branch 'master' of git://linux-nfs.org/~bfields/gitLibravatar Junio C Hamano4-1/+3273
This is in the hope of giving JBF's user-manual wider exposure. I am not very happy with trailing whitespaces in the new document, but let's not worry too much about the formatting issues for now, but concentrate more on the structure and the contents.
2007-01-31t9200: do not test -x bit if the filesystem does not support it.Libravatar Junio C Hamano1-0/+6
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-31t9200: Re-code non-ascii path test in UTF-8Libravatar Junio C Hamano1-8/+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-31Update git-cat-file documentationLibravatar Aneesh Kumar K.V1-1/+3
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@gmail.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31Documentation: "git-checkout <tree> <path>" takes any tree-ishLibravatar Junio C Hamano1-5/+7
Especially, it is not limited to branch. Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-31Improved error message from git-rebaseLibravatar David Kågedal1-1/+2
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-31Fix git-update-index to work with relative pathnames.Libravatar Alex Riesen1-2/+6
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-31Escape --upload-pack from expr.Libravatar Shawn O. Pearce3-3/+3
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-31Don't coredump on bad refs in update-server-info.Libravatar Shawn O. Pearce1-0/+2
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-31tone down the detached head warningLibravatar Nicolas Pitre1-3/+3
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-30Fix git-tag -uLibravatar Junio C Hamano1-3/+4
... 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-30user-manual: todo'sLibravatar J. Bruce Fields1-1/+3
Update todo's. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-30user-manual: point to README for gitweb informationLibravatar J. Bruce Fields1-1/+4
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-30blameview: Use git-cat-file to read the file content.Libravatar Aneesh Kumar K.V1-1/+2
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-30git-fetch: Allow fetching the remote HEADLibravatar Santi Béjar1-1/+1
... 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-30git-send-email: remove debugging output.Libravatar Junio C Hamano1-1/+1
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-30Add a missing fork() error check.Libravatar Johannes Sixt1-0/+2
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-29git-blame: somewhat better commenting.Libravatar Junio C Hamano1-38/+255
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-29Make fsck and fsck-objects be builtins.Libravatar Mark Wooding4-2/+5
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-29git-commit -s: no extra space when sign-offs appear at the end already.Libravatar Junio C Hamano1-1/+4
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-29Replace perl code with pure shell codeLibravatar Simon 'corecode' Schubert1-44/+23
Signed-off-by: Simon 'corecode' Schubert <corecode@fs.ei.tum.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-29lock_any_ref_for_update(): do not accept malformatted refs.Libravatar Junio C Hamano2-4/+4
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-29Two small typofixes.Libravatar Junio C Hamano1-2/+2
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-29user-manual: SHA1 -> object nameLibravatar J. Bruce Fields1-5/+5
Prefer "object name" to SHA1, at least in higher level documentation. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29user-manual: document git-show-branch exampleLibravatar J. Bruce Fields1-2/+28
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-29user-manual: minor "TODO" updatesLibravatar J. Bruce Fields1-9/+6
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-29user-manual: rewrap a few long linesLibravatar J. Bruce Fields1-56/+59
Rewrap some long lines. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29user-manual: reflogs, other recoveryLibravatar J. Bruce Fields1-15/+78
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-29user-manual: fix a header levelLibravatar J. Bruce Fields1-1/+1
Oops. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29user-manual: typo fixLibravatar J. Bruce Fields1-1/+1
Oops Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-29user-manual: add references to git-config man pageLibravatar J. Bruce Fields1-3/+7
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-28user-manual: repo-config -> configLibravatar J. Bruce Fields1-9/+9
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-28user-manual: fsck-objects -> fsckLibravatar J. Bruce Fields1-8/+8
There seems to be an agreement to rename fsck-objects to fsck. Signed-off-by: "J. Bruce Fields" <bfields@citi.umich.edu>
2007-01-28user-manual: git-fsck, dangling objectsLibravatar J. Bruce Fields1-6/+118
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-28git-fsck-objects is now synonym to git-fsckLibravatar Junio C Hamano15-140/+159
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28[PATCH] Rename git-repo-config to git-config.Libravatar Tom Prince58-439/+460
Signed-off-by: Tom Prince <tom.prince@ualberta.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28Heavily expanded update hook to send more useful emails than the old hookLibravatar Andy Parkins1-72/+268
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-28UNIX reference time of 1970-01-01 00:00 is UTC timezone, not local time zoneLibravatar Andy Parkins1-1/+1
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-28Teach for-each-ref about a little language called Tcl.Libravatar Shawn O. Pearce4-2/+47
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-28Add a sample program 'blameview' to show how to use git-blame --incrementalLibravatar Jeff King2-0/+128
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28git-push through git protocolLibravatar Linus Torvalds1-0/+7
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-28Document 'git-blame --incremental'Libravatar Junio C Hamano1-1/+46
Signed-off-by: Junio C Hamano <junkio@cox.net>
2007-01-28Documentation/config.txt: Fix documentation of colour config tweaks.Libravatar Mark Wooding1-10/+16
* 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>