Compare commits

..

200 Commits

Author SHA1 Message Date
e449f10580 GIT 1.5.6
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-18 13:09:43 -07:00
9a7bbd1dd1 clean up error conventions of remote.c:match_explicit
match_explicit is called for each push refspec to try to
fully resolve the source and destination sides of the
refspec.  Currently, we look at each refspec and report
errors on both the source and the dest side before aborting.

It makes sense to report errors for each refspec, since an
error in one is independent of an error in the other.
However, reporting errors on the 'dst' side of a refspec if
there has been an error on the 'src' side does not
necessarily make sense, since the interpretation of the
'dst' side depends on the 'src' side (for example, when
creating a new unqualified remote ref, we use the same type
as the src ref).

This patch lets match_explicit return early when the src
side of the refspec is bogus. We still look at all of the
refspecs before aborting the push, though.

At the same time, we clean up the call signature, which
previously took an extra "errs" flag. This was pointless, as
we didn't act on that flag, but rather just passed it back
to the caller. Instead, we now use the more traditional
"return -1" to signal an error, and the caller aggregates
the error count.

This change fixes two bugs, as well:

  - the early return avoids a segfault when passing a NULL
    matched_src to guess_ref()

  - the check for multiple sources pointing to a single dest
    aborted if the "err" flag was set. Presumably the intent
    was not to bother with the check if we had no
    matched_src. However, since the err flag was passed in
    from the caller, we might abort the check just because a
    previous refspec had a problem, which doesn't make
    sense.

    In practice, this didn't matter, since due to the error
    flag we end up aborting the push anyway.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-18 12:39:13 -07:00
8c6b57860d Fix approxidate("never") to always return 0
Commit af66366a9f introduced the keyword
"never" to be used with approxidate() but defined it with a fixed date
without taking care of timezone. As a result approxidate() will return
a timestamp in the future with a negative timezone.

With this patch, approxidate("never") always return 0 whatever your
timezone is.

Signed-off-by: Olivier Marin <dkr@freesurf.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-17 16:40:09 -07:00
1d9b26562e git-am: head -1 is obsolete and doesn't work on some new systems
head -<n> was deprecated by POSIX, and as modern versions of coreutils
package don't support it at least one exports _POSIX2_VERSION=199209
it's fails on some systems.

head -n<n> is portable, but sed <n>q is even more.

Signed-off-by: Alejandro Mery <amery@geeks.cl>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-17 16:40:09 -07:00
1a8fb155cf builtin-rerere: fix a small leak
The data read from MERGE_RR file is kept in path-list by hanging textual
40-byte conflict signature to path of the blob that contains the
conflict.  The signature is strdup'ed twice, and the second copy is given
to the path-list, leaking the first copy.

Signed-off-by: Junio C Hamano <junio@pobox.com>
Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
2008-06-17 16:39:59 -07:00
61fb0b75d1 gitweb: remove unused parse_ref method
The parse_ref method became unused in cd1464083c, but the author
decided to leave it in.  Now it gets in the way of refactoring, so
let's remove it.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-17 16:39:18 -07:00
516381d50b gitweb: quote commands properly when calling the shell
This eliminates the function git_cmd_str, which was used for composing
command lines, and adds a quote_command function, which quotes all of
its arguments (as in quote.c).

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-17 16:39:09 -07:00
79c6dca413 sha1_file.c: simplify parse_pack_index()
It was implemented as a thin wrapper around an otherwise unused
helper function parse_pack_index_file().  The code becomes simpler
and easier to read by consolidating the two.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-16 22:19:00 -07:00
3bfaf01857 create_tempfile: make sure that leading directories can be accessible by peers
In a shared repository, we should make sure adjust_shared_perm() is called
after creating the initial fan-out directories under objects/ directory.

Earlier an logico called the function only when mkdir() failed; we should
do so when mkdir() succeeded.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-16 22:02:12 -07:00
1421c5f274 write_loose_object: don't bother trying to read an old object
Before even calling this, all callers have done a "has_sha1_file(sha1)"
or "has_loose_object(sha1)" check, so there is no point in doing a
second check.

If something races with us on object creation, we handle that in the
final link() that moves it to the right place.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-16 21:46:47 -07:00
328a4750b1 path-list documentation: document all functions and data structures
Signed-off-by: Miklos Vajna <vmiklos@frugalware.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-16 21:32:22 -07:00
9e18522328 run-command documentation: fix "memset()" parameter
When initializing the struct async and struct child_process structures,
the documentation suggested "clearing" the structure with '0' instead of
'\0'.  It is enough to use integer zero here.

Signed-off-by: Miklos Vajna <vmiklos@frugalware.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-16 21:31:17 -07:00
5f54de5bd0 Merge branch 'maint'
* maint:
  diff.c: fix emit_line() again not to add extra line
2008-06-16 17:39:50 -07:00
4afbcab989 diff.c: fix emit_line() again not to add extra line
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-16 17:37:21 -07:00
9dc784a970 Merge branch 'maint'
* maint:
  diff: reset color before printing newline
2008-06-16 16:14:22 -07:00
06ff64ae3d diff: reset color before printing newline
It worked that way since commit 50f575fc (Tweak diff colors,
2006-06-22), but commit c1795bb0 (Unify whitespace checking, 2007-12-13)
changed it.  This patch restores the old behaviour.

Besides Linus' arguments in the log message of 50f575fc, resetting color
before printing newline is also important to keep 'git add --patch'
happy.  If the last line(s) of a file are removed, then that hunk will
end with a colored line.  However, if the newline comes before the color
reset, then the diff output will have an additional line at the end
containing only the reset sequence.  This causes trouble in
git-add--interactive.perl's parse_diff function, because @colored will
have one more element than @diff, and that last element will contain the
color reset.  The elements of these arrays will then be copied to @hunk,
but only as many as the number of elements in @diff.  As a result the
last color reset is lost and all subsequent terminal output will be
printed in color.

Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-16 15:22:09 -07:00
336d09daf2 Make git reflog expire honour core.sharedRepository.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-15 15:54:06 -07:00
4744d72393 Update RPM spec to drop curl executable requirement
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-15 13:47:14 -07:00
1d53f90ed9 The "curl" executable is no longer required
git-clone.sh was the last user of the "curl" executable. Relevant git
commands now use libcurl instead. This should be reflected in the
install requirements.

Signed-off-by: Johan Herland <johan@herland.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-15 13:44:44 -07:00
d0594be162 Makefile: update check-docs target
Earlier series to rename documentation pages around did not update this
target and left check-docs broken.  This should fix it.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-15 13:43:32 -07:00
8da1e21231 Consistency: Use "libcurl" instead of "cURL library" and "curl"
Signed-off-by: Johan Herland <johan@herland.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-15 13:35:10 -07:00
b96317f38f cpio is no longer used by git-clone
Signed-off-by: Johan Herland <johan@herland.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-15 13:34:32 -07:00
557040618d Documentation: RelNotes-1.5.6: talk about renamed HTML files
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-15 13:33:48 -07:00
52cb2bc28b GIT 1.5.6-rc3
Just a lot of small fixes, mostly documentation.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 14:39:22 -07:00
c529d75a75 Simplify and rename find_sha1_file()
Now that we've made the loose SHA1 file reading more careful and
streamlined, we only use the old find_sha1_file() function for checking
whether a loose object file exists at all.

As such, the whole 'return stat information' part of it was just
pointless (nobody cares any more), and the naming of the function is not
really all that relevant either.

So simplify it to not do a 'stat()', but just an existence check (which
is what the callers want), and rename it to 'has_loose_object()' which
matches the use.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 14:39:22 -07:00
44d1c19ee8 Make loose object file reading more careful
We used to do 'stat()+open()+mmap()+close()' to read the loose object
file data, which does work fine, but has a couple of problems:

 - it unnecessarily walks the filename twice (at 'stat()' time and then
   again to open it)

 - NFS generally has open-close consistency guarantees, which means that
   the initial 'stat()' was technically done outside of the normal
   consistency rules.

So change it to do 'open()+fstat()+mmap()+close()' instead, which avoids
both these issues.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 14:39:22 -07:00
5723fe7e3c Avoid cross-directory renames and linking on object creation
Instead of creating new temporary objects in the top-level git object
directory, create them in the same directory they will finally end up in
anyway.  This avoids making the final atomic "rename to stable name"
operation be a cross-directory event, which makes it a lot easier for
various filesystems.

Several filesystems do things like change the inode number when moving
files across directories (or refuse to do it entirely).

In particular, it can also cause problems for NFS implementations that
change the filehandle of a file when it moves to a different directory,
like the old user-space NFS server did, and like the Linux knfsd still
does if you don't export your filesystems with 'no_subtree_check' or if
you export a filesystem that doesn't have stable inode numbers across
renames).

This change also obviously implies creating the object fan-out
subdirectory at tempfile creation time, rather than at the final
move_temp_to_file() time.  Which actually accounts for most of the size
of the patch.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 14:39:22 -07:00
9adefee5b5 Use 'trash directory' thoroughly in t/test-lib.sh
...also in comments.

Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 13:00:01 -07:00
7c1a9e7901 Don't allocate too much memory in quote_ref_url
In c13b263, http_fetch_ref got "refs/" included in the ref passed to it,
which, incidentally, makes the allocation in quote_ref_url too big, now.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 12:53:09 -07:00
66115d363a gitweb: Make it work with $GIT containing spaces
This fixes single point where $GIT (which can contain full path
to git binary) with embedded spaces gave errors.

Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 12:48:06 -07:00
1d284cbae3 completion: add more 'git add' options
Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 12:47:44 -07:00
69c61c4fa9 git add: add long equivalents of '-u' and '-f' options
The option -u stands for --update and it is a good idea to make it clear
especially because this is the only mode of operation of "git add" that
does something different from "adding".  Give longer --force synonym to -f
while we are at it as well.

Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 12:47:31 -07:00
b994ec142f Merge branch 'rs/attr'
* rs/attr:
  Ignore .gitattributes in bare repositories
2008-06-14 11:48:59 -07:00
c8c6a2ecb4 git-svn: test that extra blank lines aren't inserted in commit messages.
Improve the git-svn-author test to check that extra newlines aren't inserted
into commit messages as they take a round trip from git to svn and back.

We test both with and without the --add-author-from option to git-svn.

git-svn: test that svn repo doesn't have extra newlines.

Signed-off-by: Avery Pennarun <apenwarr@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 11:47:56 -07:00
328eb9b32f git-svn: don't append extra newlines at the end of commit messages.
In git, all commits end in exactly one newline character.  In svn, commits
end in zero or more newlines.  Thus, when importing commits from svn into
git, git-svn always appends two extra newlines to ensure that the
git-svn-id: line is separated from the main commit message by at least one
blank line.

Combined with the terminating newline that's always present in svn commits
produced by git, you usually end up with two blank lines instead of one
between the commit message and git-svn-id: line, which is undesirable.

Instead, let's remove all trailing whitespace from the git commit on the way
through to svn.

Signed-off-by: Avery Pennarun <apenwarr@gmail.com>
Acked-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 11:47:55 -07:00
8e7e6f39b6 git-submodule - Fix errors regarding resolve_relative_url
git-submodule was invoking "die" from within resolve-relative-url, but
this does not actually cause the script to exit. Fix this by returning
the error to the caller and have the caller exit.

While we're at it, clean up the quoting on invocation of
resolve_relative_url as it was wrong.

Signed-off-by: Mark Levedahl <mlevedahl@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 11:34:00 -07:00
65e73dba4a documentation: bisect: remove bits talking about a bisection branch
... because we are now bisecting using a detached HEAD.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-14 10:52:57 -07:00
6483925999 sha1_file.c: dead code removal
write_sha1_from_fd() and write_sha1_to_fd() were dead code nobody called,
neither the latter's helper repack_object() was.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-13 23:00:51 -07:00
43d60d2e59 git-instaweb: improve auto-discovery of httpd and call conventions.
This patch allows calling:

   git-instaweb -d apache2

and have the script Do The Right Thing. In particular, the auto-discovery
mechanism has been extended in order to be used for module listing as
well, and the call convention is that if the daemon is apache2/lighttpd
and the parameter to the "-d" option does not end by "-f", the "-f" is
added to the end of the option itself.

Change all backticks to $( ... ) as per Documentation/CodingGuidelines.

Signed-off-by: Flavio Poletti <flavio@polettix.it>
Acked-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-13 22:08:30 -07:00
d88593fa04 t4126: fix test that happened to work due to timing
The test did "reset --hard" (where the HEAD commit has an empty
blob at path "empty") followed by "> empty", expecting that
the index does not notice the file _changed_ since git wrote
it out upon "reset" if the redirection is done quickly enough.

There was no need to do the emptying, and it gave a wrong result
if "reset --hard" happened on time T and then ">empty" happened on
the next second T+1.  This fixes it.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-13 22:07:34 -07:00
dc92cc20f8 Merge branch 'om/remote-fix'
* om/remote-fix:
  "remote prune": be quiet when there is nothing to prune
  remote show: list tracked remote branches with -n
  remote prune: print the list of pruned branches
  builtin-remote: split show_or_prune() in two separate functions
  remote show: fix the -n option
2008-06-12 22:55:44 -07:00
d8933f013a fast-export: Correctly generate initial commits with no parents
If we are exporting a commit which has no parents we may be doing
it to a branch that already exists, causing fast-import to assume
the branch's current revision should be the sole parent of the
new commit.  This can cause `git fast-export | git fast-import`
to produce an incorrect graph for:

   A-------M----o------o  refs/heads/master
          /
       B-+

In this graph A and B are initial commits (no parents) but if A was
output first to refs/heads/master and then B is output fast-import
would assume the graph was this instead:

   A-------M----o------o  refs/heads/master
    \     /
     +-B-+

Which would cause B, M, and all later commits to have a different
SHA-1, and obviously be quite a different graph.

Sending a reset command prior to B informs fast-import to clear
the implied parent of A, allowing B to remain an initial commit.

Reported-by: Ben Lynn <benlynn@gmail.com>
Deemed-obviously-correct-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-12 22:42:20 -07:00
7b7b4516de t/.gitattributes: only ignore whitespace errors in test files
Only ignore whitespace errors in t/tNNNN-*.sh and the t/tNNNN
subdirectories.  Other files (like test libraries) should still be
checked.

Also fix a whitespace error in t/test-lib.sh.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-12 22:22:55 -07:00
fa5b4f37e4 document --pretty=tformat: option
This was introduced in 4da45bef, but never documented anywhere.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-12 22:22:36 -07:00
fe22e5420e Improve sed portability
The behaviour of "sed" on an incomplete line is unspecified by POSIX, and
On Solaris it apparently fails to process input that doesn't end in a LF.

Consequently constructs like

  re=$(printf '%s' foo | sed -e 's/bar/BAR/g' $)

cause re to be set to the empty string. Such a construct is used in
git-submodule.sh.

Because the LF at the end of command output are stripped away by the
command substitution, it is a safe and sane change to add a LF at the end
of the printf format specifier.

Signed-off-by: Chris Ridd <chris.ridd@isode.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-12 22:20:18 -07:00
4209752da5 user-manual: describe how higher stages are set during a merge
Higher stages store the blobs involved from their side verbatim.  Removal
of uninteresting hunks are done by "diff --cc" upon demand and not stored
in the index.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-12 14:30:51 -07:00
9501fc8945 doc: adding gitman.info and *.texi to .gitignore
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-12 14:28:53 -07:00
5ada3696f6 Documentation: exclude @pxref{[REMOTES]} from texinfo intermediate output
We already had a hack to exclude @pxref{[URLS]} from the texi stream that
refers to nonexistent anchor.

This allows "make info" to produce gitman.info again.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-12 14:21:05 -07:00
6bfa3c9929 Documentation/git-pull.txt: Use more standard [NOTE] markup
Unlike other manual pages (e.g. git-blame.txt), this used *NOTE:*
to show a side note headed with boldface string "NOTE".  Use a paragraph
headed by [NOTE] like others instead.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-12 14:19:09 -07:00
8b7d4e738e "remote prune": be quiet when there is nothing to prune
The previous commit made it always say "Pruning $remote" but reported the
URL only when there is something to prune.  Make it consistent by not
saying anything at all when there is nothing to prune.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-11 23:43:25 -07:00
97fc865bc1 Typo in RelNotes.
Signed-off-by: Mikael Magnusson <mikachu@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-11 22:18:09 -07:00
196821f440 Merge git://git.kernel.org/pub/scm/gitk/gitk
* git://git.kernel.org/pub/scm/gitk/gitk:
  gitk: Handle detached heads better
2008-06-11 16:22:53 -07:00
8de7e9c07e Merge branch 'maint'
* maint:
  fix typo in tutorial
2008-06-11 16:21:56 -07:00
2feaf4e977 fix typo in tutorial
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-11 16:21:45 -07:00
e7d5a97d5e remote show: list tracked remote branches with -n
Signed-off-by: Olivier Marin <dkr@freesurf.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-10 23:18:13 -07:00
8d7679276a remote prune: print the list of pruned branches
This command is really too quiet which make it unconfortable to use.

Also implement a --dry-run option, in place of the original -n one, to
list stale tracking branches that will be pruned, but do not actually
prune them.

Add a test case for --dry-run.

Signed-off-by: Olivier Marin <dkr@freesurf.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-10 23:17:41 -07:00
67a7e2d071 builtin-remote: split show_or_prune() in two separate functions
This allow us to add different features to each of them and keep the
code simple at the same time. Also create a get_remote_ref_states()
to avoid duplicated code.

Signed-off-by: Olivier Marin <dkr@freesurf.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-10 22:43:05 -07:00
0ecfcb3b70 remote show: fix the -n option
The perl version accepted a -n flag, to show local informations only
without querying remote heads, that seems to have been lost in the C
revrite.

This restores the older behaviour and add a test case.

Signed-off-by: Olivier Marin <dkr@freesurf.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-10 22:30:01 -07:00
8c372fb01d git-cvsimport: do not fail when CVSROOT is /
For CVS repositories with unusual CVSROOT, git-cvsimport would fail:

    $ git-cvsimport -v -C foo -d :pserver:anon:@cvs.example.com:/ foo
    AuthReply: error 0 : no such repository

This patch ensures that the path is never empty, but at least '/'.

Signed-off-by: Philippe Bruhat (BooK) <book@cpan.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-10 22:24:01 -07:00
e9039dd351 Consolidate SHA1 object file close
This consolidates the common operations for closing the new temporary file
that we have written, before we move it into place with the final name.

There's some common code there (make it read-only and check for errors on
close), but more importantly, this also gives a single place to add an
fsync_or_die() call if we want to add a safe mode.

This was triggered due to Denis Bueno apparently twice being able to
corrupt his git repository on OS X due to an unlucky combination of kernel
crashes and a not-very-robust filesystem.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-10 22:23:18 -07:00
cdf222f5f0 Documentation/git-cat-file.txt: add missing line break
Without [verse], the line break between the two synopsis lines does
not make it into the man page.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-09 23:12:48 -07:00
ea81e10ff4 Merge branch 'js/merge-recursive'
* js/merge-recursive:
  merge-recursive: respect core.autocrlf when writing out the result
  Add testcase for merging in a CRLF repo
2008-06-09 16:13:10 -07:00
5bcde3082d Merge branch 'maint'
* maint:
  git-read-tree: document -v option.
  Remove exec bit from builtin-fast-export.c
2008-06-09 16:13:08 -07:00
249c61a62d merge-recursive: respect core.autocrlf when writing out the result
The code forgot to convert the blob contents into work tree
representation before writing it out.  Also fixes leaks -- earlier
the updated blobs were never freed.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-09 16:11:08 -07:00
22e801f285 git-read-tree: document -v option.
Signed-off-by: Miklos Vajna <vmiklos@frugalware.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-09 15:49:44 -07:00
eea982843e Add testcase for merging in a CRLF repo
If you work on a repo with core.autocrlf == true, you would expect
every text file to have CRLF EOLs. However, if you by some operation,
get a conflict, then the conflicted file has LF EOLs.

Now, of course you'd go about resolving the files conflict, and then 'git
add <file>'. When you do that, you'll get the warning saying that LF will
be replaced by CRLF. Then you commit. The end result is that you have a
workingdir with a mix of LF and CRLF files, which after some more
operations may trigger a "whole file changed" diff, due to the workingdir
file now having LF EOLs.

An LF only conflict file results in the resolved file being in LF,
the commit is in LF and a warning saying that LF will be replaced
by CRLF, and the working dir ends up with a mix of CRLF and LF files.

Signed-off-by: Marius Storm-Olsen <marius@trolltech.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-09 15:37:44 -07:00
2d35d556e2 Ignore .gitattributes in bare repositories
Attributes can be specified at three different places: the internal
table of default values, the file $GIT_DIR/info/attributes and files
named .gitattributes in the work tree.  Since bare repositories don't
have a work tree, git should ignore any .gitattributes files there.

This patch makes git do that, so the only way left for a user to specify
attributes in a bare repository is the file info/attributes (in addition
to changing the defaults and recompiling).

In addition, git-check-attr is now allowed to run without a work tree.
Like any user of the code in attr.c, it ignores the .gitattributes files
when run in a bare repository.  It can still read from info/attributes.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-09 15:08:26 -07:00
3c076dbe3c cat-file --batch / --batch-check: do not exit if hashes are missing
Previously, cat-file --batch / --batch-check would silently exit if it
was passed a non-existent SHA1 on stdin.  Now it prints "<SHA1>
missing" as in all other cases (and as advertised in the
documentation).

Note that cat-file --batch-check (but not --batch) will still output
"error: unable to find <SHA1>" on stderr if a non-existent SHA1 is
passed, but this does not affect parsing its stdout.

Also, type <= 0 was previously using the potentially uninitialized
type variable (relying on it being 0); it is now being initialized.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-09 13:46:08 -07:00
4e44ae45fe t1006-cat-file.sh: typo
Previously timestamps were removed unconditionally (though this didn't
seem to break this test).  Now they are only removed if $no_ts is
non-empty.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-09 13:31:23 -07:00
457bb45291 Port to 12 other Platforms.
This patch adds support to compile and run git on 12 additional platforms.
The platforms are based on UNIX Systems Labs (USL)/Novell/SYS V code base.
The most common are Novell UnixWare 2.X.X, SCO UnixWare 7.X.X,
OpenServer 5.0.X, OpenServer 6.0.X, and SCO pre OSR 5 platforms.

Looking at the the various platform headers, I find:

	#if defined(_KERNEL) || !defined(_POSIX_SOURCE) \
	     && !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)

which hides u_short and other typedefs that other header files on these
platforms depend on.  WIth _XOPEN_SOURCE defined, sources that include
system header files that depend on the typedefs such as u_short cannot be
compiled on these platforms.

__USLC__ indicates UNIX System Labs Corperation (USLC), or a Novell-derived
compiler and/or some SysV based OS's.

__M_UNIX indicates XENIX/SCO UNIX/OpenServer 5.0.7 and prior releases
of the SCO OS's.  It is used just like Apple and BSD, both of these
shouldn't have _XOPEN_SOURCE defined.

This is with suggestions and modifications from

Daniel Barkalow, Junio C Hamano, Thomas Harning, and Jeremy Maitin-Shepard.

Signed-off-by: Boyd Lynn Gerber <gerberb@zenez.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 14:27:46 -07:00
d4c44443b6 progress.c: avoid use of dynamic-sized array
Dynamically sized arrays are gcc and C99 construct.  Using them hurts
portability to older compilers, although using them is nice in this case
it is not desirable.  This patch removes the only use of the construct
in stop_progress_msg(); the function is about writing out a single line
of a message, and the existing callers of this function feed messages
of only bounded size anyway, so use of dynamic array is simply overkill.

Signed-off-by: Boyd Lynn Gerber <gerberb@zenez.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:56:32 -07:00
eba1351f03 git-name-rev.txt: document --no-undefined and --always
Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:38 -07:00
a3800f66a6 git-describe.txt: document --always
Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:38 -07:00
459cf2e985 Docs: add some long/short options
Namely:

 git-clean.txt: --dry-run --quiet
 git-count-objects.txt: --verbose
 git-quiltimport.txt: -n
 git-remote.txt: -v --verbose

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:38 -07:00
3240240ff4 Docs: Use "-l::\n--long\n" format in OPTIONS sections
The OPTIONS section of a documentation file contains a list
of the options a git command accepts.

Currently there are several variants to describe the case that
different options (almost) do the same in the OPTIONS section.

Some are:

 -f, --foo::
 -f|--foo::
 -f | --foo::

But AsciiDoc has the special form:

 -f::
 --foo::

This patch applies this form to the documentation of the whole git suite,
and removes useless em-dash prevention, so \--foo becomes --foo.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:38 -07:00
bc47c29ec1 git-commit.txt: Add missing long/short options
Also split the "-c or -C <commit>" item into two separate items.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:38 -07:00
d1eb35b653 git-send-email: allow whitespace in addressee list
When interactively supplying addresses to send an email to with
send-email, whitespace after the separation comma (as in 'list, jc')
wasn't ignored.  This meant that resolving of the alias ' jc' would
fail, sending an email only to list. With this patch, the optional
trailing whitespace is ignored.

Signed-off-by: Pieter de Bie <pdebie@ai.rug.nl>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:38 -07:00
9f7820ae57 send-email: Allow the envelope sender to be set via configuration
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:38 -07:00
55f409a826 gitweb setup instruction: rewrite HEAD and root as well
Also add a few more hints for how to setup and configure gitweb as described

[jc: with a fix from Mike Hommey]

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:37 -07:00
c4a7ff52bd git-commit.txt: Correct option alternatives
This patch fixes the SYNOPSIS in git-commit.txt:

 * --amend could be used in conjunction with -c/-C/-F/-m;
   it is not mutually exclusive with them.

 * -m and -F are not alternative options to -c/-C;
   you can reuse authorship from a commit (-c/-C)
   but change the message (-m/-F).

Furthermore, for long-option consistency --author <author>
is changed to --author=<author>.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:37 -07:00
88b1f0b809 git-rebase -i: mention the short command aliases in the todo list
git rebase -i already supports 'p', 'e' and 's' as aliases for 'pick',
'edit' and 'squash', but one could know it only by reading the source
code. If a user rebases a lot, it's quite handy, so mention these short
forms as well.

Signed-off-by: Miklos Vajna <vmiklos@frugalware.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:37 -07:00
39468defd3 Remove unused code in parse_commit_buffer()
The n_refs variable is no longer really used in this function, so there
is no reason to keep it.

It was introduced in 27dedf0c and the code that really used it was
removed in 7914053.

Signed-off-by: Miklos Vajna <vmiklos@frugalware.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:37 -07:00
d633c882db http-push.c: remove duplicated code
An earlier commit aa1dbc9 (Update http-push functionality, 2006-03-07)
borrowed some code from rev-list.c.

This copy and paste made sense back then, because mark_edges_uninteresting(),
and its helper mark_edge_parents_uninteresting(), accessed a file scope
static variable  "revs" in rev-list.c, and http-push.c did not have nor care
about such a variable.

But these days they are already properly libified and live in list-objects.c
and they take "revs" as as an argument.  Make use of them and lose 20 or
so lines.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 13:46:37 -07:00
170e095a9c Remove exec bit from builtin-fast-export.c
Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 10:48:46 -07:00
e048a49f96 make_nonrelative_path: Use is_absolute_path()
This helps porting to Windows.

Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-08 10:48:01 -07:00
218bf69f0b GIT 1.5.6-rc2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-07 13:05:34 -07:00
dceab83755 Merge 1.5.5.4 in
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-07 13:01:14 -07:00
7064ca51b0 GIT 1.5.5.4
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-07 11:45:48 -07:00
03300c0ac0 git log --graph: print '*' for all commits, including merges
Previously, merge commits were printed with 'M' instead of '*'.  This
had the potential to confuse users when not all parents of the merge
commit were included in the log output.

As Junio has pointed out, merge commits can almost always be easily
identified from the log message, anyway.

Signed-off-by: Adam Simpkins <adam@adamsimpkins.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-06 11:56:43 -07:00
1b9a9467f8 Use nonrelative paths instead of absolute paths for cloned repositories
Particularly for the "alternates" file, if one will be created, we
want a path that doesn't depend on the current directory, but we want
to retain any symlinks in the path as given and any in the user's view
of the current directory when the path was given.

Signed-off-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-06 11:23:10 -07:00
9e1f0a85c6 documentation: move git(7) to git(1)
As the "git" man page describes the "git" command at the end-user
level, it seems better to move it to man section 1.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-06 11:18:28 -07:00
30eba7bf2c documentation: convert "diffcore" and "repository-layout" to man pages
This patch renames the following documents and at the same time converts
them to the man format:

diffcore.txt          -> gitdiffcore.txt		(man section 7)
repository-layout.txt -> gitrepository-layout.txt	(man section 5)

Other documents that reference the above ones are changed accordingly.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-06 11:14:52 -07:00
a0ebe573a5 graph API: fix "git log --graph --first-parent"
This change teaches the graph API that only the first parent of each
commit is interesting when "--first-parent" was specified.

This change also consolidates the graph parent walking logic into two
new internal functions, first_interesting_parent() and
next_interesting_parent().  A simpler fix would have been to simply
break at the end of the 2 existing for loops when
graph->revs->first_parent_only is set.  However, this change seems
nicer, especially if we ever need to add any new loops over the parent
list in the future.

Signed-off-by: Adam Simpkins <adam@adamsimpkins.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-06 09:23:09 -07:00
b7d9681974 Print info about "git help COMMAND" on git's main usage pages
Git's main usage pages did not show "git help" as a way to get more
information on a specific subcommand. This patch adds an info line after
the list of git commands currently printed by "git", "git help", "git
--help" and "git help --all".

Signed-off-by: Teemu Likonen <tlikonen@iki.fi>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-06 09:22:18 -07:00
e919cb302e Merge branch 'maint'
* maint:
  git-for-each-ref.txt: minor improvements
  name-rev: Fix segmentation fault when using --all
2008-06-06 09:21:48 -07:00
c0f6dc9b20 git-for-each-ref.txt: minor improvements
Rewrapped synopsis and removed wrong asterisk behind --count option;
clarified --sort=<key> description for multiple keys; documented that
for-each-ref supports not only glob patterns but also prefixes like
"refs/heads" as patterns, and that multiple patterns can be given.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-06 08:39:54 -07:00
a83123deec name-rev: Fix segmentation fault when using --all
In commit da2478db "describe --always: fall back to showing an
abbreviated object name" we lost the check that skips empty entries in
the object hash table when iterating over it in cmd_name_rev. That may
cause a NULL pointer being handed to show_name(), leading to a
segmentation fault. So add that check back again.

Signed-off-by: Björn Steinbrink <B.Steinbrink@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-05 21:01:45 -07:00
7f718e8b46 gitweb: Add charset info to "raw" output of 'text/plain' blobs
Earlier "blob_plain" view sent "charset=utf-8" only when gitweb
guessed the content type to be text by reading from it, and not when
the MIME type was obtained from /etc/mime.types, or when gitweb
couldn't guess mimetype and used $default_blob_plain_mimetype.

This fixes the bug by always add charset info from
$default_text_plain_charset (if it is defined) to "raw" (a=blob_plain)
output for 'text/plain' blobs.

Generating information for Content-Type: header got separated into
blob_contenttype() subroutine; adding charset info in a special case
was removed from blob_mimetype(), which now should return mimetype
only.

While at it cleanup code a bit: put subroutine parameter
initialization first, make error message more robust (when $file_name
is not defined) if more cryptic, remove unnecessary '"' around
variable ("$var" -> $var).

Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-04 15:05:01 -07:00
dd613e6b87 Strbuf documentation: document most functions
All functions in strbuf.h are documented, except launch_editor().

Signed-off-by: Miklos Vajna <vmiklos@frugalware.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-04 15:02:42 -07:00
9e3fd41124 Documentation/git-mailsplit: Enhanced description of -o option
Added '-o' in the description of '-o<directory>' for consistency reasons.

Signed-off-by: Dirk Suesserott <newsletter@dirk.my1.cc>
2008-06-04 14:51:34 -07:00
541fc218e6 Fix "git clone http://$URL" to check out the worktree when asked
The builtin-clone now does the http commit walking and the tree unpacking
in the same process, and the commit walker leaves the in-core objects in a
funny state.  When forgetting the data read from the tree object, the
object should be marked "not parsed yet" for later users.

Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-04 13:33:25 -07:00
60727b5800 Merge branch 'maint'
* maint:
  describe: match pattern for lightweight tags too
2008-06-04 13:15:59 -07:00
4ed19a3c17 describe: match pattern for lightweight tags too
The <pattern> given "git describe --match" was used only to filter tag
objects, and not to filter lightweight tags.  This fixes it.

[jc: made the log to clarify this is a bugfix, not an enhancement, with
additional test]

Signed-off-by: Michael Dressel <MichaelTiloDressel@t-online.de>
Acked-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-04 13:08:03 -07:00
de5825cc82 t7502: honor SHELL_PATH
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-04 12:11:59 -07:00
adf60f1440 Documentation: git-log cannot use rev-list specific options
The log family and git-rev-list share the same set of options that come
from revision walking machinery, but they both have options unique to
them.  Notably, --header, --timestamp, --stdin and --quiet apply only to
rev-list.  Exclude them from the git-log documentation.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-03 23:56:56 -07:00
70ca472f1f Fix t5516 on cygwin: it does not like double slashes at the beginning of a path
The double slashes "//" result from url./$TRASH/. expansion and the
current directory, which even in cygwin contains "/" as first
character. In cygwin such strings have special meaning: UNC path.
Accessing an UNC path built for test purpose usually fails.

Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-03 22:12:08 -07:00
a3c91e088e t7502: tighten loosely written test sequence
We would like to catch breakage at any step in the sequence.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-03 18:13:33 -07:00
7845944c64 t7502: do not globally unset GIT_COMMITTER_* environment variables
One particular test wants to check the behaviour of the command
when these variables are not set, but the later tests should have
the reliable committer identity for repeatable tests.

Move the "unset" of the variables inside a subshell in the test
that wants to unset them.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-03 18:08:08 -07:00
422b206342 cat-file --batch: flush stdout also when objects are missing
cat-file --batch/--batch-check only flushes stdout when the object
exists, but not when it doesn't ("<object> missing").  This makes
bidirectional pipes hang.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-03 12:40:12 -07:00
02c17196e3 GIT v1.5.6-rc1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-03 00:17:22 -07:00
67bfc030d7 commit: drop duplicated parents
The scripted version of git-commit internally used git-commit-tree which
omitted duplicated parents given from the command line.  This prevented a
nonsensical octopus merge from getting created even when you said "git
merge A B" while you are already on branch A.

However, when git-commit was rewritten in C, this sanity check was lost.
This resurrects it.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-02 23:55:57 -07:00
69e66f5500 rebase --interactive: Compute upstream SHA1 before switching branches
If the upstream argument to rebase (the first argument) was relative to
HEAD and the name of the branch to rebase (the second argument) was given,
the upstream would have been interpreted relative to the second argument.
In particular, this command

    git rebase -i HEAD topic

would always finish with "Nothing to do". (a1bf91e fixed the same issue
for non-interactive rebase.)

Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>
Acked-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-02 20:36:14 -07:00
c5833f6e13 Documentation/git-filter-branch.txt: Fix description of --commit-filter
The old description was misleading and logically impossible. It claimed that
the ancestors of the original commit would be re-written to have the multiple
emitted ids as parents. Not only would this modify existing objects, but it
would create a cycle. What this actually does is pass the multiple emitted ids
to the newly-created children to use as parents.

Signed-off-by: Kevin Ballard <kevin@sb.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-02 20:36:09 -07:00
f70dda250e gitweb: Fix "next" link on bottom of page
Fix search form generation to not modify $cgi->param(...)'s.

In git_header_html() we used to use $cgi->hidden(-name => "a") etc. to
generate hidden fields; unfortunately to use this form it is required
to modify $cgi->param("a") etc., which makes href(-replay,...) use
wrong replay values.  This for example made the "next" link on the
bottom of the page has a=search instead of a=$action, and thus fails to
get you to the next page.

Because in CGI the value of a hidden field is "sticky", there is no
way to modify it short of modifying $cgi->param(...).  Therefore it
got replaced by generating <input type="hidden" ...> element [semi]
directly.

Alternate solution would be for href(-replay,...) to use values saved
in global variables, such as $action etc., instead of (re)reading them
from $cgi->param($symbol).

The bad link was reported by Kai Blin through
  http://bugs.debian.org/481902

Reported-by: Kai Blin <kai.blin@gmail.com>
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Tested-by: Gerrit Pape <pape@smarden.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-02 20:36:02 -07:00
3db4723ead Revert "git.el: Set process-environment instead of invoking env"
This reverts commit dbe48256b4, which
caused mis-encoding of non-ASCII author/committer names when the
git-status mode is used to create commits.

Signed-off-by: Karl Hasselström <kha@treskal.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-02 19:07:12 -07:00
06f60e8edf Merge branch 'sb/am-tests'
* sb/am-tests:
  Merge t4150-am-subdir.sh and t4151-am.sh into t4150-am.sh
  Add test cases for git-am
2008-06-01 23:45:41 -07:00
f0d2a057c1 Merge branch 'lw/test-fix'
* lw/test-fix:
  t/test-lib.sh: resolve symlinks in working directory, for pathname comparisons
2008-06-01 23:45:37 -07:00
0cc01c9657 Merge branch 'sp/remote'
* sp/remote:
  Make "git-remote rm" delete refs acccording to fetch specs
  Make "git-remote prune" delete refs according to fetch specs
  Remove unused remote_prefix member in builtin-remote
2008-06-01 23:43:30 -07:00
d8ad63aff0 Merge branch 'lt/pack-sync'
* lt/pack-sync:
  Remove now unnecessary 'sync()' calls
  Make pack creation always fsync() the result
2008-06-01 23:43:21 -07:00
a44a5c006e Merge branch 'np/pack-check'
* np/pack-check:
  make verify-pack a bit more useful with bad packs
2008-06-01 23:39:24 -07:00
6241360498 make verify-pack a bit more useful with bad packs
When a pack gets corrupted, its SHA1 checksum will fail.  However, this
is more useful to let the test go on in order to find the actual
problem location than only complain about the SHA1 mismatch and
bail out.

Also, it is more useful to compare the stored pack SHA1 with the one in
the index file instead of the computed SHA1 since the computed SHA1
from a corrupted pack won't match the one stored in the index either.

Finally a few code and message cleanups were thrown in as a bonus.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-01 23:25:38 -07:00
310b9ded2b Merge branch 'jb/reset-q'
* jb/reset-q:
  git-reset: honor -q and do not show progress message
2008-06-01 23:14:11 -07:00
8f1b0637c1 Merge branch 'jc/checkout'
* 'jc/checkout':
  checkout: "best effort" checkout
  unpack_trees(): allow callers to differentiate worktree errors from merge errors
  checkout: consolidate reset_{to_new,clean_to_new}()
  checkout: make reset_clean_to_new() not die by itself
2008-06-01 22:55:36 -07:00
6810053154 Merge branch 'lr/init-bare'
* lr/init-bare:
  git-init: accept --bare option
2008-06-01 22:54:16 -07:00
32d8050a86 Git.pm: fix return value of config method
If config is called in array context, it is supposed to return all
values set for the given option key.  This works for all cases except
if there is no value set at all.  In that case, it wrongly returns
(undef) instead of ().  This fixes the return statement so that it
returns undef in scalar context but an empty array in array context.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-01 22:28:27 -07:00
850d3a7c05 glossary: improve a few links
They now point to more specific/appropriate targets.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-01 22:26:37 -07:00
497c83314c Documentation: convert "glossary" and "core-tutorial" to man pages
This patch renames the following documents and at the same time converts
them to the man format:

core-tutorial.txt -> gitcore-tutorial.txt
glossary.txt      -> gitglossary.txt

But as the glossary is included in the user manual and as the new
gitglossary man page cannot be included as a whole in the user manual,
the actual glossary content is now in its own "glossary-content.txt"
new file. And this file is included by both the user manual and the
gitglossary man page.

Other documents that reference the above ones are changed accordingly
and sometimes improved a little too.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-01 22:23:10 -07:00
58c8dd2173 Git.pm: fix documentation of hash_object
The documentation of hash_object incorrectly states that it accepts a
file handle -- in fact it doesn't, and there is even a TODO comment
for this.  This fixes the documentation.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-01 22:21:05 -07:00
f1979d6b3f graph API: avoid printing unnecessary padding before some octopus merges
When an octopus merge is printed, several lines are printed before it to
move over existing branch lines to its right.  This is needed to make
room for the children of the octopus merge.  For example:

| | | |
| |  \ \
| |   \ \
| |    \ \
| M---. \ \
| |\ \ \ \ \

However, this step isn't necessary if there are no branch lines to the
right of the octopus merge.  Therefore, skip this step when it is not
needed, to avoid printing extra lines that don't really serve any
purpose.

Signed-off-by: Adam Simpkins <adam@adamsimpkins.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-01 21:44:47 -07:00
3395908ee4 graph API: improve display of merge commits
This change improves the way merge commits are displayed, to eliminate a
few visual artifacts.  Previously, merge commits were displayed as:

| M  \
| |\  |

As pointed out by Teemu Likonen, this didn't look nice if the rightmost
branch line was displayed as '\' on the previous line, as it then
appeared to have an extra space in it:

| |\
| M  \
| |\  |

This change updates the code so that branch lines to the right of merge
commits are printed slightly differently depending on how the previous
line was displayed:

| |\          | | |        | |  /
| M \         | M |        | M |
| |\ \        | |\ \       | |\ \

Signed-off-by: Adam Simpkins <adam@adamsimpkins.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-01 14:50:52 -07:00
b7166cce8c git-svn fails in prop_walk if $self->{path} is not empty
If url://repo/trunk is the current Git branch, prop_walk strips trunk
from the path name. That is useful as, for example "git svn show-ignore"
should not return results like

    trunk/foo

but

    foo

if svn:ignore for trunk includes foo.

The problem now is that prop_walk strips trunk from the path and then
calls itself recursively. But now trunk is missing in the path and
get_dir fails, because it is called for a non existing path.

The attached patch fixed the problem, by adding the previously stipped
$self->{path} in the recursive call. I tested it with my current
git-svn repository for the commands show-ignore and show-external.

Patch was submitted through
 http://bugs.debian.org/477393

Signed-off-by: Gerrit Pape <pape@smarden.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-01 14:29:50 -07:00
7d45e14683 Add a --dry-run option to git-svn rebase
When working with multiple branches in an svn repository, it can be
useful to verify the svn repository and local tracking branch that will
be used for the rebase operation.

Signed-off-by: Seth Falcon <seth@userprimary.net>
Acked-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-01 14:29:50 -07:00
d72ab8c892 Fix path duplication in git svn commit-diff
Given an SVN repo file:///tmp/svntest/repo, trying to commit changes
to a file proj/trunk/foo.txt in that repo with this command line

  git svn commit-diff -r2 HEAD^ HEAD file:///tmp/svntest/repo/proj/trunk

gave the error message

  Filesystem has no item: File not found: transaction '2-6', path
  '/proj/trunk/proj/trunk/foo.txt'

This fixes the duplication.

Signed-off-by: Karl Hasselström <kha@treskal.com>
Acked-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-06-01 14:29:50 -07:00
7ad2458fad Make "git-remote rm" delete refs acccording to fetch specs
A remote may be configured to fetch into tracking branches that
don't match its name.  A user may have created a remote by hand
that will fetch to a different tracking branch namespace:

  [remote "alt"]
    url = git://repo.or.cz/alt-git.git
    fetch = refs/heads/*:refs/remotes/origin/*

When deleting remote alt we should clean up the refs whose names
start with "refs/remotes/origin/", even though the remote itself
was named alt by the user.

To avoid deleting refs used by another remote we only clear refs
that are unique to this remote.  This prevents `git prune rm alt`
from removing the refs used by say origin if alt was just using a
different URL for the same repository.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 23:55:50 -07:00
c175a7ad32 Make "git-remote prune" delete refs according to fetch specs
A remote may be configured to fetch into tracking branches that
do not match the remote name.  For example a user may have created
extra remotes that will fetch to the same tracking branch namespace,
but from different URLs:

  [remote "origin"]
    url = git://git.kernel.org/pub/scm/git/git.git
    fetch = refs/heads/*:refs/remotes/origin/*

  [remote "alt"]
    url = git://repo.or.cz/alt-git.git
    fetch = refs/heads/*:refs/remotes/origin/*

When running `git remote prune alt` we expect stale branches to
be removed from "refs/remotes/origin/*" and not from the unused
namespace of "refs/remotes/alt/*".

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 23:55:15 -07:00
6a15bc0d22 Remove unused remote_prefix member in builtin-remote
Not sure when this became unused, but no code references it,
other than to populate the strbuf with an initial value.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 23:54:10 -07:00
1bd9c64840 t/test-lib.sh: resolve symlinks in working directory, for pathname comparisons
Without this, some tests will fail because they compare command output
of subprocesses (such as git) with $PWD -- but subprocesses have the
physical path as their working directory, whereas $PWD contains the
symlinked path.  This fixes it.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 18:32:17 -07:00
5aa965a0c1 git-reset: honor -q and do not show progress message
When running git-reset in a non-interactive setting, the -q switch
works for everything except the progress updates. This squelches it.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 18:10:58 -07:00
8ec00d0534 Merge t4150-am-subdir.sh and t4151-am.sh into t4150-am.sh
This patch moves the am test cases in t4150-am.sh and the
am subdirectory test cases from t/t4150-am-subdir.sh into
t/4151-am.sh.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 15:42:12 -07:00
d3a7b8f5c5 Add test cases for git-am
Add t/t4151-am.sh that does basic testing of git-am functionality,
including:
 * am applies patch correctly
 * am changes committer and keeps author
 * am --signoff adds Signed-off-by: line
 * am stays in branch
 * am --signoff does not add Signed-off-by: line if already there
 * am without --keep removes Re: and [PATCH] stuff
 * am --keep really keeps the subject
 * am -3 falls back to 3-way merge
 * am pauses on conflict
 * am --skip works
 * am --resolved works
 * am takes patches from a Pine mailbox
 * am fails on mail without patch
 * am fails on empty patch

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 15:42:12 -07:00
54352bb274 Remove now unnecessary 'sync()' calls
Since the pack-files are now always created stably on disk, there is no
need to sync() before pruning lose objects or old stale pack-files.

[jc: with Nico's clean-up]

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 14:49:29 -07:00
4c81b03e30 Make pack creation always fsync() the result
This means that we can depend on packs always being stable on disk,
simplifying a lot of the object serialization worries.  And unlike loose
objects, serializing pack creation IO isn't going to be a performance
killer.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 14:46:57 -07:00
5812473335 Clarify description of <repository> argument to pull/fetch for naming remotes.
Alter the description of <repository> in OPTIONS section to
explicitly state that a 'remote name' is accepted.
Rewrite REMOTES section to more directly identify the
different kinds of remote-name permitted.

Signed-off-by: John J. Franey <jjfraney@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 14:46:24 -07:00
ad5fa3cc0e rollback lock files on more signals than just SIGINT
Other signals are also common, for example SIGTERM and SIGHUP.
This patch modifies the lock file mechanism to catch more signals.
It also modifies http-push.c which was missing SIGTERM.

Signed-off-by: Paolo Bonzini <bonzini@gnu.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 14:33:59 -07:00
c16570c42a Revision walking documentation: document most important functions
Unfortunately the list is not complete, but includes the essential ones.

Signed-off-by: Miklos Vajna <vmiklos@frugalware.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 14:32:56 -07:00
6ab69bf253 gitweb: Remove gitweb/test/ directory
Testing if gitweb handles filenames with spaces, filenames with plus
sign ('+') which encodes spaces in CGI parameters (in URLs), and
filenames with Unicode characters should be handled by gitweb tests.

Those files are remainder of the time when gitweb was project on its
own, not a part of git (with its testsuite).

Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 14:18:40 -07:00
aa9349d449 Add shortcut in refresh_cache_ent() for marked entries.
When a cache entry has been marked as CE_VALID, the user has
promised us that any change in the work tree does not matter.
Just mark the entry as up-to-date, and continue.

Signed-off-by: Marius Storm-Olsen <marius@trolltech.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 14:18:20 -07:00
b7f685a754 Clearify the documentation for core.ignoreStat
The previous documentation didn't make it clear that the
"assume unchanged" was on per file basis, and not a global
flag.

Signed-off-by: Marius Storm-Olsen <marius@trolltech.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-31 13:09:39 -07:00
291d823e36 checkout: "best effort" checkout
When unpack_trees() returned an error while switching branches, we used to
stop right there, exiting without writing the index out or switching HEAD.

This is Ok when unpack_trees() returned an error because it detected
untracked files or locally modified paths that could be overwritten by
branch switching, because that error return is done before we start to
modify the work tree.  But it is undesirable if unpack_trees() already
started to update the work tree and a failure is returned because some but
not all paths are updated in the work tree, perhaps because a directory
that some files need to go in was read-only by mistake, or a file that
will be overwritten by branch switching had a mandatory lock on it and we
failed to unlink it.

This changes the behaviour upon such an error to complete the branch
switching; the files updated in the work tree will hopefully be much more
consistent with the index and HEAD derived from the switched-to branch.

We still issue error messages, and exit the command with non-zero status,
so scripted callers need to notice it.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-29 17:35:22 -07:00
2e2b887d1c unpack_trees(): allow callers to differentiate worktree errors from merge errors
Instead of uniformly returning -1 on any error, this teaches
unpack_trees() to return -2 when the merge itself is Ok but worktree
refuses to get updated.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-29 17:35:21 -07:00
6286a08db3 checkout: consolidate reset_{to_new,clean_to_new}()
These two were very similar functions with only tiny bit of difference.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-29 17:35:10 -07:00
74d3b23fe3 git-init: accept --bare option
It is unfortunate that "git init --bare" does not work and the only reason
why "init" did not learn its own "--bare" option is because "git --bare
init" already does the job (and as an option to the git 'potty', it is
more generic solution).

This teaches "git init" its own "--bare" option, so that both "git --bare init"
and "git init --bare" works mostly the same way.

[jc: rewrote the log message and added test]

Signed-off-by: Luciano Rocha <strange@nsk.pt>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-28 18:31:19 -07:00
84a5750bc5 checkout: make reset_clean_to_new() not die by itself
Instead, have its error percolate up through the callchain and let it be
the exit status of the main command.  No semantic changes yet.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-28 17:38:21 -07:00
d2b3691b61 "git checkout -- paths..." should error out when paths cannot be written
When "git checkout -- paths..." cannot update work tree for whatever
reason, checkout_entry() correctly issued an error message for the path to
the end user, but the command ignored the error, causing the entire
command to succeed.  This fixes it.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-28 17:38:20 -07:00
a7052d3521 Documentation: git-cherry uses git-patch-id
Geoffrey Irving noticed that git-cherry talks about comparing commits without
hinting how they are compared.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-28 17:03:46 -07:00
56ae8df5c7 Manual subsection to refer to other pages is SEE ALSO
Consistently say so in all caps as it is customary to do so.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-28 16:59:40 -07:00
823ea1211c bisect: use "$GIT_DIR/BISECT_START" to check if we are bisecting
It seems simpler and safer to use the BISECT_START file everywhere
to decide if we are bisecting or not, instead of using it in some
places and BISECT_NAMES in other places.

In commit 6459c7c678 (Nov 18 2007,
Bisect: use "$GIT_DIR/BISECT_NAMES" to check if we are bisecting.),
we decided to use BISECT_NAMES but code changed a lot and we now
have to check BISECT_START first in the "bisect_start" function
anyway.

This patch also makes things a little bit safer by creating
the BISECT_START file first and deleting it last, and also by
adding checks in "bisect_clean_state".

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-28 11:47:58 -07:00
efb98b4453 builtin-fetch.c (store_updated_refs): Honor update_local_ref() return value
Sync with builtin-fetch--tool.c where append_fetch_head()
honors update_local_ref() return value.

This fixes non fast forward fetch exit status,
http://bugzilla.altlinux.org/show_bug.cgi?id=15037

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-28 10:47:12 -07:00
6eec46bdda fix sha1_pack_index_name()
An earlier commit 633f43e (Remove redundant code, eliminate one static
variable, 2008-05-24) had a thinko (perhaps an eyeno) that broke
sha1_pack_index_name() function.  One symptom of this was that the http
walker is now completely broken.

This should fix it.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-28 10:24:32 -07:00
d683a0e00c Git::cat_blob: allow using an empty blob to fix git-svn breakage
Recent "git-svn optimization" series introduced Git::cat_blob() subroutine
whose interface was broken in that it returned the size of the blob but
signalled an error by returning 0.  You can never use an empty blob with
such an interface.

This fixes the interface to return a negative value to signal an error.

Reported by Björn Steinbrink.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-27 23:35:55 -07:00
b2a42f55bc t5100: Avoid filename "nul"
There are broken filesystems that cannot have a file whose name is "nul"
anywhere on it.  Rename the test file to make ourselves more portable.

Noticed by Mark Levedahl.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-27 23:12:29 -07:00
b71ce7f3f1 Merge 1.5.5.3 in 2008-05-27 22:34:19 -07:00
28bc30220f GIT 1.5.5.3
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-27 22:32:47 -07:00
d5350fd2b3 commit --interactive: properly update the index before commiting
When adding files through git commit --interactive, and 'quit'
afterwards, the message in the editor of the commit message indicates
that many (maybe all) files are deleted from the tree.  Dismissing that
and running git commit afterwards does the right thing.  This commit
fixes git commit --interactive to properly update the index before
commiting.

Reported by Jiří Paleček through
 http://bugs.debian.org/480429

Signed-off-by: Gerrit Pape <pape@smarden.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-27 22:32:47 -07:00
1f684dc01c gitweb: only display "next" links in logs if there is a next page
There was a bug in the implementation of the "next" links in
format_paging_nav (for log and shortlog), which caused the next links
to always be displayed, even if there is no next page.  This fixes it.

Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-27 22:27:30 -07:00
a17171b473 Revert "filter-branch: subdirectory filter needs --full-history"
This reverts commit cfabd6eee1. I had
implemented it without understanding what --full-history does. Consider
this history:

    C--M--N
   /  /  /
  A--B  /
   \   /
    D-/

where B and C modify a path, X, in the same way so that the result is
identical, and D does not modify it at all. With the path limiter X and
without --full-history this is simplified to

   A--B

i.e. only one of the paths via B or C is chosen. I had assumed that
--full-history would keep both paths like this

    C--M
   /  /
  A--B

removing the path via D; but in fact it keeps the entire history.

Currently, git does not have the capability to simplify to this
intermediary case. However, the other extreme to keep the entire history
is not wanted either in usual cases. I think we can expect that histories
like the above are rare, and in the usual cases we want a simplified
history. So let's remove --full-history again.

(Concerning t7003, subsequent tests depend on what the test case sets up,
so we can't just back out the entire test case.)

Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-27 22:27:30 -07:00
049c1ad2d6 Documentation/git-bundle.txt: fix synopsis
The <git-rev-list args> are mandatory to git bundle create, not
optional.  The usage output of git bundle is already right on this.

Signed-off-by: Gerrit Pape <pape@smarden.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-27 22:01:31 -07:00
37b78c2547 clone: make sure we support the transport type
If we use an unsupported transport (e.g., http when curl
support is not compiled in), transport_get reports an error
to the user, but we still get a transport object. We need to
manually check and abort the clone process at that point, or
we end up with a segfault.

Noticed by Thomas Rast.

Signed-off-by: Jeff King <peff@peff.net>
Acked-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-27 21:30:16 -07:00
cb418b5a38 t5700-clone-reference: Quote $U
The new "trash directory" bites again.

Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-27 21:29:01 -07:00
40672a1904 Add some tests for git update-ref -d
Signed-off-by: Karl Hasselström <kha@treskal.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-27 20:56:22 -07:00
3beb56bde6 Merge branch 'jc/diff-no-no-index'
* jc/diff-no-no-index:
  git diff --no-index: default to page like other diff frontends
  git-diff: allow  --no-index semantics a bit more
  "git diff": do not ignore index without --no-index
  diff-files: do not play --no-index games
  tests: do not use implicit "git diff --no-index"
2008-05-26 22:38:19 -07:00
b3fde6ccb1 git diff --no-index: default to page like other diff frontends
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-26 22:35:07 -07:00
040366076f git-diff: allow --no-index semantics a bit more
Even when inside a git work tree, if two paths are given and at least one
is clearly outside the work tree, it cannot be a request to diff a tracked
path anyway; allow such an invocation to use --no-index semantics.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-26 21:54:23 -07:00
2fe18392f0 Merge branch 'maint'
* maint:
  Documentation: fix graph in git-rev-parse.txt
  show-branch --current: do not barf on detached HEAD
2008-05-26 19:49:01 -07:00
109440c1bf Merge branch 'gp/bisect-fix' into maint
* gp/bisect-fix:
  bisect: print an error message when "git rev-list --bisect-vars" fails
  git-bisect.sh: don't accidentally override existing branch "bisect"
2008-05-26 19:15:03 -07:00
2d3cfd77ad Merge git://repo.or.cz/git-gui
* git://repo.or.cz/git-gui:
  git-gui: Vertically align textboxes with labels
  git-gui: Handle workdir detection when CYGWIN=nowinsymlinks
  git-gui: Add a --trace command line option
2008-05-26 19:10:43 -07:00
df2740b066 Documentation: fix graph in git-rev-parse.txt
Preformatted html and man pages show a mangled graph, caused by a
backslash.

Commit f1ec6b22a8 fixed this same issue,
but it seems that new versions of the Asciidoc toolchain changed their
behaviour.

Signed-off-by: Michele Ballabio <barra_cuda@katamail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-26 19:10:03 -07:00
95dcfa3633 git-gui: Vertically align textboxes with labels
In git-gui after clicking either on 'Create New Repository' or
'Open Existing Repository' the form elements aren't centered like
they are pretty much everywhere else in the app. At least when ran
on a mac, haven't checked on other platforms.

Using grid instead of pack seems to fix this.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-05-26 21:05:20 -04:00
f8fcb57bb4 show-branch --current: do not barf on detached HEAD
The code assumed that there always is the current branch, but the result
from resolve_ref() on detached HEAD does not even start with "refs/heads/".

Originally noticed and fixed by Stephan Beyer.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-26 15:09:56 -07:00
d3d20b8468 Makefile: fix dependency on wt-status.h
Noticed by Hannes, reported by Dscho.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-26 14:56:19 -07:00
37a12dda24 hg-to-git: add --verbose option
This patch adds an option to make hg-to-git quiet by default.  Note:
it only suppresses those messages that would be printed when everything
was up-to-date.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Acked-by: Stelian Pop <stelian@popies.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-26 10:43:39 -07:00
2d3922dc61 Documentation/git.txt: link to 1.5.5.2 documentation.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-25 22:43:14 -07:00
8366b7baae Merge branch 'maint'
* maint:
  builtin-fast-export: Only output a single parent per line
  Release Notes for 1.5.5.2

Conflicts:

	RelNotes
2008-05-25 22:43:05 -07:00
a2f5be5008 Merge branch 'jk/maint-send-email-compose' into maint
* jk/maint-send-email-compose:
  send-email: rfc2047-quote subject lines with non-ascii characters
  send-email: specify content-type of --compose body
2008-05-25 22:34:23 -07:00
93c7b9c159 Merge branch 'hb/maint-send-email-quote-recipients' into maint
* hb/maint-send-email-quote-recipients:
  Fix recipient santitization
2008-05-25 22:34:20 -07:00
6abf189506 Merge branch 'maint-1.5.4' into maint
* maint-1.5.4:
  builtin-fast-export: Only output a single parent per line
2008-05-25 22:34:05 -07:00
5070b49e52 builtin-fast-export: Only output a single parent per line
According to the git-fast-import man-page, you can only put a single
committish per merge: line, like this:

  merge :10
  merge :11

However, git-fast-export puts all parents on a single line, like this:

  merge :10 :11

This changes fast-export to output a single parent per line.  Otherwise
neither git-fast-import nor bzr-fast-import can read its output.

[jc: fix-up to remove excess LF in the output that makes fast-import barf]

Signed-off-by: Pieter de Bie <pdebie@ai.rug.nl>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-25 22:26:24 -07:00
20bd3b072f Release Notes for 1.5.5.2
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-25 21:11:24 -07:00
fa620f1ac8 Ignore no-op changes in paranoid update hook
If the hook gets invoked with identical old and new ids there
is no change taking place.  We probably should not have been
called, but instead of failing silently allow the no-op.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-25 20:29:30 -07:00
50b7b2ee99 Don't load missing ACL files in paranoid update hook
If a user or group ACL file does not exist in the current tip
revision of the acl repository we will get an error from cat-file
when we ask for that blob as it cannot be resolved.  A quick look
at the history by rev-list can tell us if there is a path there
or not.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-25 20:29:30 -07:00
97561fff32 Don't diff empty tree on branch creation in paranoid update hook
Listing all files in a branch during branch creation is silly;
the user's file-level ACLs probably don't mean anything at this
point.  We now treat the base case of 0{40} as an empty diff,
as this happens only when the user is creating the branch and
there are file level ACLs that diff against the old value of
the branch.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-25 20:29:30 -07:00
48ded91674 log --pretty: do not accept bogus "--prettyshort"
... nor bogus "format.pretty = '=short'".  Both are syntax errors.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-25 20:29:07 -07:00
37869f40a8 log --graph: do not accept log --graphbogus
An obvious fix to the argument parser.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-25 20:28:58 -07:00
f53bc0953f Update draft release notes for 1.5.6
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-25 18:28:37 -07:00
c11ff120f3 gitk: Handle detached heads better
This draws the currently checked-out head with a yellow circle, as
suggested by Linus Torvalds, and fixes various places in the code
where we assumed that the current head always had a branch.  Now we
can display the fake commits for local changes on a detached head.

Signed-off-by: Paul Mackerras <paulus@samba.org>
2008-05-26 10:11:33 +10:00
0569e9b8ce "git diff": do not ignore index without --no-index
Even if "foo" and/or "bar" does not exist in index, "git diff foo bar"
should not change behaviour drastically from "git diff foo bar baz" or
"git diff foo".  A feature that "sometimes works and is handy" is an
unreliable cute hack.

"git diff foo bar" outside a git repository continues to work as a more
colourful alternative to "diff -u" as before.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-24 00:16:39 -07:00
6304c29d51 diff-files: do not play --no-index games
Being able to say "git diff A B" outside a git repository and getting a
colourful version of "diff -u A B" may be nice, but such a cute hack
should not give bogus results to scripts that want to give two paths,
either or both of which happen to have been removed from the work tree,
to "git diff-files".

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-24 00:07:38 -07:00
3af828634f tests: do not use implicit "git diff --no-index"
As a general principle, we should not use "git diff" to validate the
results of what git command that is being tested has done.  We would not
know if we are testing the command in question, or locating a bug in the
cute hack of "git diff --no-index".

Rather use test_cmp for that purpose.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2008-05-24 00:01:56 -07:00
7f83aa2d3d git-gui: Handle workdir detection when CYGWIN=nowinsymlinks
If the user has put nowinsymlinks into their CYGWIN environment
variable any symlinks created by a Cygwin process (e.g. ln -s)
will not have the ".lnk" suffix.  In this case workdir is still
a workdir, but our detection of looking for "info.lnk" fails
as the symlink is actually a normal file called "info".

Instead we just always use Cygwin's test executable to see if
info/exclude is a file.  If it is, we assume from there on it
can be read by git-ls-files --others and is thus safe to use
on the command line.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-05-22 08:34:00 -04:00
16dd62ac4d git-gui: Add a --trace command line option
Often new Git users want to know what commands git-gui uses to make
changes, so they can learn the command line interface by mimicking
what git-gui does in response to GUI actions.  Showing the direct
commands being executed is easy enough to implement but this is of
little value to end-users because git-gui frequently directly calls
plumbing, not porcelain.

Since the code is already written and tested, its fairly harmless
to include.  It may not help a new end-user, but it can help with
debugging git-gui or reverse-engineering its logic to further make
changes to it or implement another GUI for Git.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2008-05-20 15:44:46 -04:00
316 changed files with 3839 additions and 2207 deletions

View File

@ -2,7 +2,9 @@
*.html
*.[1-8]
*.made
*.texi
git.info
gitman.info
howto-index.txt
doc.dep
cmds-*.txt

View File

@ -1,10 +1,12 @@
MAN1_TXT= \
$(filter-out $(addsuffix .txt, $(ARTICLES) $(SP_ARTICLES)), \
$(wildcard git-*.txt)) \
gitk.txt
MAN5_TXT=gitattributes.txt gitignore.txt gitmodules.txt githooks.txt
MAN7_TXT=git.txt gitcli.txt gittutorial.txt gittutorial-2.txt \
gitcvs-migration.txt
gitk.txt git.txt
MAN5_TXT=gitattributes.txt gitignore.txt gitmodules.txt githooks.txt \
gitrepository-layout.txt
MAN7_TXT=gitcli.txt gittutorial.txt gittutorial-2.txt \
gitcvs-migration.txt gitcore-tutorial.txt gitglossary.txt \
gitdiffcore.txt
MAN_TXT = $(MAN1_TXT) $(MAN5_TXT) $(MAN7_TXT)
MAN_XML=$(patsubst %.txt,%.xml,$(MAN_TXT))
@ -12,13 +14,9 @@ MAN_HTML=$(patsubst %.txt,%.html,$(MAN_TXT))
DOC_HTML=$(MAN_HTML)
ARTICLES = core-tutorial
ARTICLES += diffcore
ARTICLES += howto-index
ARTICLES += repository-layout
ARTICLES = howto-index
ARTICLES += everyday
ARTICLES += git-tools
ARTICLES += glossary
# with their own formatting rules.
SP_ARTICLES = howto/revert-branch-rebase howto/using-merge-subtree user-manual
API_DOCS = $(patsubst %.txt,%,$(filter-out technical/api-index-skel.txt technical/api-index.txt, $(wildcard technical/api-*.txt)))
@ -141,8 +139,6 @@ cmd-list.made: cmd-list.perl ../command-list.txt $(MAN1_TXT)
$(PERL_PATH) ./cmd-list.perl ../command-list.txt
date >$@
git.7 git.html: git.txt
clean:
$(RM) *.xml *.xml+ *.html *.html+ *.1 *.5 *.7
$(RM) *.texi *.texi+ git.info gitman.info

View File

@ -0,0 +1,27 @@
GIT v1.5.5.2 Release Notes
==========================
Fixes since v1.5.5.1
--------------------
* "git repack -n" was mistakenly made no-op earlier.
* "git imap-send" wanted to always have imap.host even when use of
imap.tunnel made it unnecessary.
* reflog syntax that uses time e.g. "HEAD@{10 seconds ago}:path" did not
stop parsing at the closing "}".
* "git rev-parse --symbolic-full-name ^master^2" printed solitary "^",
but it should print nothing.
* "git commit" did not detect when it failed to write tree objects.
* "git fetch" sometimes transferred too many objects unnecessarily.
* a path specification "a/b" in .gitattributes file should not match
"sub/a/b".
* various gitweb fixes.
Also comes with various documentation updates.

View File

@ -0,0 +1,12 @@
GIT v1.5.5.3 Release Notes
==========================
Fixes since v1.5.5.2
--------------------
* "git send-email --compose" did not notice that non-ascii contents
needed some MIME magic.
* "git fast-export" did not export octopus merges correctly.
Also comes with various documentation updates.

View File

@ -0,0 +1,7 @@
GIT v1.5.5.4 Release Notes
==========================
Fixes since v1.5.5.4
--------------------
* "git name-rev --all" used to segfault.

View File

@ -6,16 +6,40 @@ Updates since v1.5.5
(subsystems)
* Comes with updated gitk and git-gui.
(portability)
* git will build on AIX better than before now.
* core.ignorecase configuration variable can be used to work better on
filesystems that are not case sensitive.
* "git init" now autodetects the case sensitivity of the filesystem and
sets core.ignorecase accordingly.
* cpio is no longer used; neither "curl" binary (libcurl is still used).
(documentation)
* Many freestanding documentation pages have been converted and made
available to "git help" (aka "man git<something>") as section 7 of
the manual pages. This means bookmarks to some HTML documentation
files may need to be updated (eg "tutorial.html" became
"gittutorial.html").
(performance)
* "git clone" was rewritten in C. This will hopefully help cloning a
repository with insane number of refs.
* "git rebase --onto $there $from $branch" used to switch to the tip of
$branch only to immediately reset back to $from, smudging work tree
files unnecessarily. This has been optimized.
* Object creation codepath in "git-svn" has been optimized by enhancing
plumbing commands git-cat-file and git-hash-object.
(usability, bells and whistles)
* "git add -p" (and the "patch" subcommand of "git add -i") can choose to
@ -23,20 +47,57 @@ Updates since v1.5.5
* "git bisect help" gives longer and more helpful usage information.
* "git bisect" does not use a special branch "bisect" anymore; instead, it
does its work on a detached HEAD.
* "git branch" (and "git checkout -b") can be told to set up
branch.<name>.rebase automatically, so that later you can say "git pull"
and magically cause "git pull --rebase" to happen.
* "git branch --merged" and "git branch --no-merged" can be used to list
branches that have already been merged (or not yet merged) to the
current branch.
* "git cherry-pick" and "git revert" can add a sign-off.
* "git commit" mentions the author identity when you are committing
somebody else's changes.
* "git diff/log --dirstat" output is consistent between binary and textual
changes.
* "git gc --auto" honors a new pre-aut-gc hook to temporarily disable it.
* "git filter-branch" rewrites signed tags by demoting them to annotated.
* "git format-patch --no-binary" can produce a patch that lack binary
changes (i.e. cannot be used to propagate the whole changes) meant only
for reviewing.
* "git init --bare" is a synonym for "git --bare init" now.
* "git gc --auto" honors a new pre-auto-gc hook to temporarily disable it.
* "git log --pretty=tformat:<custom format>" gives a LF after each entry,
instead of giving a LF between each pair of entries which is how
"git log --pretty=format:<custom format>" works.
* "git log" and friends learned the "--graph" option to show the ancestry
graph at the left margin of the output.
* "git log" and friends can be told to use date format that is different
from the default via 'log.date' configuration variable.
* "git send-email" now can send out messages outside a git repository.
* "git send-email --compose" was made aware of rfc2047 quoting.
* "git status" can optionally include output from "git submodule
summary".
* "git svn" learned --add-author-from option to propagate the authorship
by munging the commit log message.
* new object creation and looking up in "git svn" has been optimized.
* "gitweb" can read from a system-wide configuration file.
(internal)
@ -51,9 +112,4 @@ Fixes since v1.5.5
All of the fixes in v1.5.5 maintenance series are included in
this release, unless otherwise noted.
--
exec >/var/tmp/1
O=v1.5.5-56-g5f0734f
echo O=`git describe refs/heads/master`
git shortlog --no-merges $O..refs/heads/master ^refs/heads/maint
And there are too numerous small fixes to otherwise note here ;-)

View File

@ -41,7 +41,8 @@ of lines before or after the line given by <start>.
-S <revs-file>::
Use revs from revs-file instead of calling linkgit:git-rev-list[1].
-p, --porcelain::
-p::
--porcelain::
Show in a format designed for machine consumption.
--incremental::
@ -83,5 +84,6 @@ alphanumeric characters that git must detect as moving
between files for it to associate those lines with the parent
commit.
-h, --help::
-h::
--help::
Show help message.

View File

@ -11,7 +11,7 @@ while (<STDIN>) {
if (s/^\@top (.*)/\@node $1,,,Top/) {
push @menu, $1;
}
s/\(\@pxref{\[URLS\]}\)//;
s/\(\@pxref{\[(URLS|REMOTES)\]}\)//;
print TMP;
}
close TMP;

View File

@ -205,10 +205,13 @@ Can be overridden by the 'GIT_PROXY_COMMAND' environment variable
handling).
core.ignoreStat::
The working copy files are assumed to stay unchanged until you
mark them otherwise manually - Git will not detect the file changes
by lstat() calls. This is useful on systems where those are very
slow, such as Microsoft Windows. See linkgit:git-update-index[1].
If true, commands which modify both the working tree and the index
will mark the updated paths with the "assume unchanged" bit in the
index. These marked files are then assumed to stay unchanged in the
working copy, until you mark them otherwise manually - Git will not
detect the file changes by lstat() calls. This is useful on systems
where those are very slow, such as Microsoft Windows.
See linkgit:git-update-index[1].
False by default.
core.preferSymlinkRefs::

View File

@ -241,4 +241,4 @@ endif::git-format-patch[]
Do not show any source or destination prefix.
For more detailed explanation on these common options, see also
link:diffcore.html[diffcore documentation].
linkgit:gitdiffcore[7][diffcore documentation].

View File

@ -1,22 +1,26 @@
-q, \--quiet::
-q::
--quiet::
Pass --quiet to git-fetch-pack and silence any other internally
used programs.
-v, \--verbose::
-v::
--verbose::
Be verbose.
-a, \--append::
-a::
--append::
Append ref names and object names of fetched refs to the
existing contents of `.git/FETCH_HEAD`. Without this
option old data in `.git/FETCH_HEAD` will be overwritten.
\--upload-pack <upload-pack>::
--upload-pack <upload-pack>::
When given, and the repository to fetch from is handled
by 'git-fetch-pack', '--exec=<upload-pack>' is passed to
the command to specify non-default path for the command
run on the other end.
-f, \--force::
-f::
--force::
When `git-fetch` is used with `<rbranch>:<lbranch>`
refspec, it refuses to update the local branch
`<lbranch>` unless the remote branch `<rbranch>` it
@ -24,16 +28,18 @@
overrides that check.
ifdef::git-pull[]
\--no-tags::
--no-tags::
endif::git-pull[]
ifndef::git-pull[]
-n, \--no-tags::
-n::
--no-tags::
endif::git-pull[]
By default, tags that point at objects that are downloaded
from the remote repository are fetched and stored locally.
This option disables this automatic tag following.
-t, \--tags::
-t::
--tags::
Most of the tags are fetched automatically as branch
heads are downloaded, but tags that do not point at
objects reachable from the branch heads that are being
@ -41,10 +47,12 @@ endif::git-pull[]
flag lets all tags and their associated objects be
downloaded.
-k, \--keep::
-k::
--keep::
Keep downloaded pack.
-u, \--update-head-ok::
-u::
--update-head-ok::
By default `git-fetch` refuses to update the head which
corresponds to the current branch. This flag disables the
check. This is purely for the internal use for `git-pull`
@ -52,7 +60,7 @@ endif::git-pull[]
implementing your own Porcelain you are not supposed to
use it.
\--depth=<depth>::
--depth=<depth>::
Deepen the history of a 'shallow' repository created by
`git clone` with `--depth=<depth>` option (see linkgit:git-clone[1])
by the specified number of commits.

View File

@ -8,8 +8,9 @@ git-add - Add file contents to the index
SYNOPSIS
--------
[verse]
'git-add' [-n] [-v] [-f] [--interactive | -i] [--patch | -p] [-u] [--refresh]
[--ignore-errors] [--] <filepattern>...
'git-add' [-n] [-v] [--force | -f] [--interactive | -i] [--patch | -p]
[--update | -u] [--refresh] [--ignore-errors] [--]
<filepattern>...
DESCRIPTION
-----------
@ -50,27 +51,33 @@ OPTIONS
and `dir/file2`) can be given to add all files in the
directory, recursively.
-n, \--dry-run::
-n::
--dry-run::
Don't actually add the file(s), just show if they exist.
-v, \--verbose::
-v::
--verbose::
Be verbose.
-f::
--force::
Allow adding otherwise ignored files.
-i, \--interactive::
-i::
--interactive::
Add modified contents in the working tree interactively to
the index. Optional path arguments may be supplied to limit
operation to a subset of the working tree. See ``Interactive
mode'' for details.
-p, \--patch::
-p::
--patch::
Similar to Interactive mode but the initial command loop is
bypassed and the 'patch' subcommand is invoked using each of
the specified filepatterns before exiting.
-u::
--update::
Update only files that git already knows about, staging modified
content for commit and marking deleted files for removal. This
is similar
@ -79,11 +86,11 @@ OPTIONS
command line. If no paths are specified, all tracked files in the
current directory and its subdirectories are updated.
\--refresh::
--refresh::
Don't add the file(s), but only refresh their stat()
information in the index.
\--ignore-errors::
--ignore-errors::
If some files could not be added because of errors indexing
them, do not abort the operation, but continue adding the
others. The command shall still exit with non-zero status.
@ -100,7 +107,7 @@ Configuration
The optional configuration variable 'core.excludesfile' indicates a path to a
file containing patterns of file names to exclude from git-add, similar to
$GIT_DIR/info/exclude. Patterns in the exclude file are used in addition to
those in info/exclude. See link:repository-layout.html[repository layout].
those in info/exclude. See linkgit:gitrepository-layout[5][repository layout].
EXAMPLES
@ -246,7 +253,7 @@ characters that need C-quoting. `core.quotepath` configuration can be
used to work this limitation around to some degree, but backslash,
double-quote and control characters will still have problems.
See Also
SEE ALSO
--------
linkgit:git-status[1]
linkgit:git-rm[1]
@ -265,4 +272,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -28,14 +28,17 @@ OPTIONS
supply this argument, reads from the standard input. If you supply
directories, they'll be treated as Maildirs.
-s, --signoff::
-s::
--signoff::
Add `Signed-off-by:` line to the commit message, using
the committer identity of yourself.
-k, --keep::
-k::
--keep::
Pass `-k` flag to `git-mailinfo` (see linkgit:git-mailinfo[1]).
-u, --utf8::
-u::
--utf8::
Pass `-u` flag to `git-mailinfo` (see linkgit:git-mailinfo[1]).
The proposed commit log message taken from the e-mail
is re-coded into UTF-8 encoding (configuration variable
@ -49,13 +52,15 @@ default. You could use `--no-utf8` to override this.
Pass `-n` flag to `git-mailinfo` (see
linkgit:git-mailinfo[1]).
-3, --3way::
-3::
--3way::
When the patch does not apply cleanly, fall back on
3-way merge, if the patch records the identity of blobs
it is supposed to apply to, and we have those blobs
available locally.
-b, --binary::
-b::
--binary::
Pass `--allow-binary-replacement` flag to `git-apply`
(see linkgit:git-apply[1]).
@ -64,19 +69,22 @@ default. You could use `--no-utf8` to override this.
program that applies
the patch.
-C<n>, -p<n>::
-C<n>::
-p<n>::
These flags are passed to the `git-apply` (see linkgit:git-apply[1])
program that applies
the patch.
-i, --interactive::
-i::
--interactive::
Run interactively.
--skip::
Skip the current patch. This is only meaningful when
restarting an aborted patch.
-r, --resolved::
-r::
--resolved::
After a patch failure (e.g. attempting to apply
conflicting patch), the user has applied it by hand and
the index file stores the result of the application.
@ -153,4 +161,4 @@ Documentation by Petr Baudis, Junio C Hamano and the git-list <git@vger.kernel.o
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -28,4 +28,4 @@ Written by Ryan Anderson <ryan@michonline.com>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -73,7 +73,8 @@ OPTIONS
When a pure mode change is encountered (which has no index information),
the information is read from the current index instead.
-R, --reverse::
-R::
--reverse::
Apply the patch in reverse.
--reject::
@ -124,7 +125,8 @@ discouraged.
the result with this option, which would apply the
deletion part but not addition part.
--allow-binary-replacement, --binary::
--allow-binary-replacement::
--binary::
Historically we did not allow binary patch applied
without an explicit permission from the user, and this
flag was the way to do so. Currently we always allow binary
@ -169,7 +171,8 @@ behavior:
correctly. This option adds support for applying such patches by
working around this bug.
-v, --verbose::
-v::
--verbose::
Report progress to stderr. By default, only a message about the
current patch being applied will be printed. This option will cause
additional information to be reported.
@ -206,4 +209,4 @@ Documentation by Junio C Hamano
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -117,4 +117,4 @@ Documentation by Junio C Hamano, Martin Langhoff and the git-list <git@vger.kern
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -36,10 +36,12 @@ OPTIONS
Format of the resulting archive: 'tar' or 'zip'. The default
is 'tar'.
--list, -l::
-l::
--list::
Show all available formats.
--verbose, -v::
-v::
--verbose::
Report progress to stderr.
--prefix=<prefix>/::
@ -118,4 +120,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -85,10 +85,9 @@ Oh, and then after you want to reset to the original head, do a
$ git bisect reset
------------------------------------------------
to get back to the original branch, instead of being in one of the
bisection branches ("git bisect start" will do that for you too,
actually: it will reset the bisection state, and before it does that
it checks that you're not using some old bisection branch).
to get back to the original branch, instead of being on the bisection
commit ("git bisect start" will do that for you too, actually: it will
reset the bisection state).
Bisect visualize
~~~~~~~~~~~~~~~~
@ -283,4 +282,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -52,12 +52,14 @@ include::blame-options.txt[]
a certain threshold for git-blame to consider those lines
of code to have been moved.
-f, --show-name::
-f::
--show-name::
Show filename in the original commit. By default
filename is shown if there is any line that came from a
file with different name, due to rename detection.
-n, --show-number::
-n::
--show-number::
Show line number in the original commit (Default: off).
-s::
@ -192,4 +194,4 @@ Written by Junio C Hamano <junkio@cox.net>
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -95,7 +95,8 @@ OPTIONS
-a::
List both remote-tracking branches and local branches.
-v, --verbose::
-v::
--verbose::
Show sha1 and commit subject line for each head.
--abbrev=<length>::
@ -209,4 +210,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -9,7 +9,7 @@ git-bundle - Move objects and refs by archive
SYNOPSIS
--------
[verse]
'git-bundle' create <file> [git-rev-list args]
'git-bundle' create <file> <git-rev-list args>
'git-bundle' verify <file>
'git-bundle' list-heads <file> [refname...]
'git-bundle' unbundle <file> [refname...]
@ -171,4 +171,4 @@ Written by Mark Levedahl <mdl123@verizon.net>
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -8,6 +8,7 @@ git-cat-file - Provide content or type/size information for repository objects
SYNOPSIS
--------
[verse]
'git-cat-file' [-t | -s | -e | -p | <type>] <object>
'git-cat-file' [--batch | --batch-check] < <list-of-objects>
@ -103,4 +104,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -38,4 +38,4 @@ Documentation by James Bowes.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -52,4 +52,4 @@ refname expressions (see linkgit:git-rev-parse[1]). Namely:
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -22,21 +22,26 @@ Will copy all files listed from the index to the working directory
OPTIONS
-------
-u|--index::
-u::
--index::
update stat information for the checked out entries in
the index file.
-q|--quiet::
-q::
--quiet::
be quiet if files exist or are not in the index
-f|--force::
-f::
--force::
forces overwrite of existing files
-a|--all::
-a::
--all::
checks out all files in the index. Cannot be used
together with explicit filenames.
-n|--no-create::
-n::
--no-create::
Don't checkout new files, only refresh files already checked
out.
@ -181,4 +186,4 @@ Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -47,7 +47,8 @@ OPTIONS
by linkgit:git-check-ref-format[1]. Some of these checks
may restrict the characters allowed in a branch name.
-t, --track::
-t::
--track::
When creating a new branch, set up configuration so that git-pull
will automatically retrieve data from the start point, which must be
a branch. Use this if you always pull from the same upstream branch
@ -215,4 +216,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -22,7 +22,8 @@ OPTIONS
For a more complete list of ways to spell commits, see
"SPECIFYING REVISIONS" section in linkgit:git-rev-parse[1].
-e|--edit::
-e::
--edit::
With this option, `git-cherry-pick` will let you edit the commit
message prior to committing.
@ -44,14 +45,16 @@ OPTIONS
described above, and `-r` was to disable it. Now the
default is not to do `-x` so this option is a no-op.
-m parent-number|--mainline parent-number::
-m parent-number::
--mainline parent-number::
Usually you cannot cherry-pick a merge because you do not know which
side of the merge should be considered the mainline. This
option specifies the parent number (starting from 1) of
the mainline and allows cherry-pick to replay the change
relative to the specified parent.
-n|--no-commit::
-n::
--no-commit::
Usually the command automatically creates a commit with
a commit log message stating which commit was
cherry-picked. This flag applies the change necessary
@ -64,7 +67,8 @@ OPTIONS
This is useful when cherry-picking more than one commits'
effect to your working tree in a row.
-s|--signoff::
-s::
--signoff::
Add Signed-off-by line at the end of the commit message.
@ -78,4 +82,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -13,6 +13,8 @@ DESCRIPTION
-----------
The changeset (or "diff") of each commit between the fork-point and <head>
is compared against each commit between the fork-point and <upstream>.
The commits are compared with their 'patch id', obtained from linkgit:git-patch-id[1]
program.
Every commit that doesn't exist in the <upstream> branch
has its id (sha1) reported, prefixed by a symbol. The ones that have
@ -56,6 +58,10 @@ OPTIONS
<limit>::
Do not report commits up to (and including) limit.
SEE ALSO
--------
linkgit:git-patch-id[1]
Author
------
Written by Junio C Hamano <junkio@cox.net>
@ -66,4 +72,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -29,4 +29,4 @@ Documentation by Shawn O. Pearce <spearce@spearce.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -30,9 +30,11 @@ OPTIONS
git-clean will refuse to run unless given -f or -n.
-n::
--dry-run::
Don't actually remove anything, just show what would be done.
-q::
--quiet::
Be quiet, only report errors, but not the files that are
successfully removed.
@ -54,4 +56,4 @@ Written by Pavel Roskin <proski@gnu.org>
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -205,4 +205,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -88,7 +88,7 @@ Discussion
include::i18n.txt[]
See Also
SEE ALSO
--------
linkgit:git-write-tree[1]
@ -103,4 +103,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -8,9 +8,9 @@ git-commit - Record changes to the repository
SYNOPSIS
--------
[verse]
'git-commit' [-a | --interactive] [-s] [-v] [-u]
[(-c | -C) <commit> | -F <file> | -m <msg> | --amend]
[--allow-empty] [--no-verify] [-e] [--author <author>]
'git-commit' [-a | --interactive] [-s] [-v] [-u] [--amend]
[(-c | -C) <commit>] [-F <file> | -m <msg>]
[--allow-empty] [--no-verify] [-e] [--author=<author>]
[--cleanup=<mode>] [--] [[-i | -o ]<file>...]
DESCRIPTION
@ -52,39 +52,49 @@ that, you can recover from it with linkgit:git-reset[1].
OPTIONS
-------
-a|--all::
-a::
--all::
Tell the command to automatically stage files that have
been modified and deleted, but new files you have not
told git about are not affected.
-c or -C <commit>::
Take existing commit object, and reuse the log message
-C <commit>::
--reuse-message=<commit>::
Take an existing commit object, and reuse the log message
and the authorship information (including the timestamp)
when creating the commit. With '-C', the editor is not
invoked; with '-c' the user can further edit the commit
message.
when creating the commit.
-c <commit>::
--reedit-message=<commit>::
Like '-C', but with '-c' the editor is invoked, so that
the user can further edit the commit message.
-F <file>::
--file=<file>::
Take the commit message from the given file. Use '-' to
read the message from the standard input.
--author <author>::
--author=<author>::
Override the author name used in the commit. Use
`A U Thor <author@example.com>` format.
-m <msg>|--message=<msg>::
-m <msg>::
--message=<msg>::
Use the given <msg> as the commit message.
-t <file>|--template=<file>::
-t <file>::
--template=<file>::
Use the contents of the given file as the initial version
of the commit message. The editor is invoked and you can
make subsequent changes. If a message is specified using
the `-m` or `-F` options, this option has no effect. This
overrides the `commit.template` configuration variable.
-s|--signoff::
-s::
--signoff::
Add Signed-off-by line at the end of the commit message.
-n::
--no-verify::
This option bypasses the pre-commit and commit-msg hooks.
See also linkgit:githooks[5][hooks].
@ -105,14 +115,14 @@ OPTIONS
'whitespace' removes just leading/trailing whitespace lines
and 'strip' removes both whitespace and commentary.
-e|--edit::
-e::
--edit::
The message taken from file with `-F`, command line with
`-m`, and from file with `-C` are usually used as the
commit log message unmodified. This option lets you
further edit the message taken from these sources.
--amend::
Used to amend the tip of the current branch. Prepare the tree
object you would want to replace the latest commit as usual
(this includes the usual -i/-o and explicit paths), and the
@ -133,13 +143,15 @@ It is a rough equivalent for:
but can be used to amend a merge commit.
--
-i|--include::
-i::
--include::
Before making a commit out of staged contents so far,
stage the contents of paths given on the command line
as well. This is usually not what you want unless you
are concluding a conflicted merge.
-o|--only::
-o::
--only::
Make a commit only from the paths specified on the
command line, disregarding any contents that have been
staged so far. This is the default mode of operation of
@ -150,20 +162,23 @@ but can be used to amend a merge commit.
the last commit without committing changes that have
already been staged.
-u|--untracked-files::
-u::
--untracked-files::
Show all untracked files, also those in uninteresting
directories, in the "Untracked files:" section of commit
message template. Without this option only its name and
a trailing slash are displayed for each untracked
directory.
-v|--verbose::
-v::
--verbose::
Show unified diff between the HEAD commit and what
would be committed at the bottom of the commit message
template. Note that this diff output doesn't have its
lines prefixed with '#'.
-q|--quiet::
-q::
--quiet::
Suppress commit summary message.
\--::
@ -312,4 +327,4 @@ Junio C Hamano <junkio@cox.net>
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -101,7 +101,8 @@ rather than from all available files.
+
See also <<FILES>>.
-f config-file, --file config-file::
-f config-file::
--file config-file::
Use the given config file instead of the one specified by GIT_CONFIG.
--remove-section::
@ -116,7 +117,8 @@ See also <<FILES>>.
--unset-all::
Remove all lines matching the key from config file.
-l, --list::
-l::
--list::
List all variables set in config file.
--bool::
@ -128,7 +130,8 @@ See also <<FILES>>.
in the config file will cause the value to be multiplied
by 1024, 1048576, or 1073741824 prior to output.
-z, --null::
-z::
--null::
For all options that output values and/or keys, always
end values with the null character (instead of a
newline). Use newline instead as a delimiter between
@ -334,4 +337,4 @@ Documentation by Johannes Schindelin, Petr Baudis and the git-list <git@vger.ker
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -18,6 +18,7 @@ them, to help you decide when it is a good time to repack.
OPTIONS
-------
-v::
--verbose::
In addition to the number of loose objects and disk
space consumed, it reports the number of in-pack
objects, number of packs, and number of objects that can be
@ -34,4 +35,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -117,4 +117,4 @@ Documentation by Martin Langhoff <martin@catalyst.net.nz> and others.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -170,4 +170,4 @@ Documentation by Matthias Urlichs <smurf@smurf.noris.de>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -41,10 +41,13 @@ Don't allow recursing into subdirectories
Don't check for `gitcvs.enabled` in config. You also have to specify a list
of allowed directories (see below) if you want to use this option.
--version, -V::
-V::
--version::
Print version information and exit
--help, -h, -H::
-h::
-H::
--help::
Print usage information and exit
<directory>::
@ -352,4 +355,4 @@ Documentation by Martyn Smith <martyn@catalyst.net.nz>, Martin Langhoff <martin@
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -103,7 +103,8 @@ OPTIONS
Log to syslog instead of stderr. Note that this option does not imply
--verbose, thus by default only error conditions will be logged.
--user-path, --user-path=path::
--user-path::
--user-path=path::
Allow ~user notation to be used in requests. When
specified with no parameter, requests to
git://host/~alice/foo is taken as a request to access
@ -127,7 +128,8 @@ OPTIONS
Save the process id in 'file'. Ignored when the daemon
is run under `--inetd`.
--user=user, --group=group::
--user=user::
--group=group::
Change daemon's uid and gid before entering the service loop.
When only `--user` is given without `--group`, the
primary group ID for the user is used. The values of
@ -138,14 +140,16 @@ Giving these options is an error when used with `--inetd`; use
the facility of inet daemon to achieve the same before spawning
`git-daemon` if needed.
--enable=service, --disable=service::
--enable=service::
--disable=service::
Enable/disable the service site-wide per default. Note
that a service disabled site-wide can still be enabled
per repository if it is marked overridable and the
repository enables the service with an configuration
item.
--allow-override=service, --forbid-override=service::
--allow-override=service::
--forbid-override=service::
Allow/forbid overriding the site-wide default with per
repository configuration. By default, all the services
are overridable.
@ -272,4 +276,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -70,6 +70,9 @@ OPTIONS
Only consider tags matching the given pattern (can be used to avoid
leaking private tags made from the repository).
--always::
Show uniquely abbreviated commit object as fallback.
EXAMPLES
--------
@ -142,4 +145,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -8,7 +8,7 @@ git-diff-files - Compares files in the working tree and the index
SYNOPSIS
--------
'git-diff-files' [-q] [-0|-1|-2|-3|-c|--cc|--no-index] [<common diff options>] [<path>...]
'git-diff-files' [-q] [-0|-1|-2|-3|-c|--cc] [<common diff options>] [<path>...]
DESCRIPTION
-----------
@ -30,15 +30,13 @@ The default is to diff against our branch (-2) and the
cleanly resolved paths. The option -0 can be given to
omit diff output for unmerged entries and just show "Unmerged".
-c,--cc::
-c::
--cc::
This compares stage 2 (our branch), stage 3 (their
branch) and the working tree file and outputs a combined
diff, similar to the way 'diff-tree' shows a merge
commit with these flags.
--no-index::
Compare the two given files / directories.
-q::
Remain silent even on nonexistent files
@ -57,4 +55,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -129,4 +129,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -165,4 +165,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -168,4 +168,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -80,4 +80,4 @@ Documentation by Johannes E. Schindelin <johannes.schindelin@gmx.de>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -1119,4 +1119,4 @@ Documentation by Shawn O. Pearce <spearce@spearce.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -28,30 +28,32 @@ have a common ancestor commit.
OPTIONS
-------
\--all::
--all::
Fetch all remote refs.
\--quiet, \-q::
-q::
--quiet::
Pass '-q' flag to 'git-unpack-objects'; this makes the
cloning process less verbose.
\--keep, \-k::
-k::
--keep::
Do not invoke 'git-unpack-objects' on received data, but
create a single packfile out of it instead, and store it
in the object database. If provided twice then the pack is
locked against repacking.
\--thin::
--thin::
Spend extra cycles to minimize the number of objects to be sent.
Use it on slower connection.
\--include-tag::
--include-tag::
If the remote side supports it, annotated tags objects will
be downloaded on the same connection as the other objects if
the object the tag references is downloaded. The caller must
otherwise determine the tags this option made available.
\--upload-pack=<git-upload-pack>::
--upload-pack=<git-upload-pack>::
Use this to specify the path to 'git-upload-pack' on the
remote side, if is not found on your $PATH.
Installations of sshd ignores the user's environment
@ -63,16 +65,16 @@ OPTIONS
shells by having a lean .bashrc file (they set most of
the things up in .bash_profile).
\--exec=<git-upload-pack>::
--exec=<git-upload-pack>::
Same as \--upload-pack=<git-upload-pack>.
\--depth=<n>::
--depth=<n>::
Limit fetching to ancestor-chains not longer than n.
\--no-progress::
--no-progress::
Do not show the progress.
\-v::
-v::
Run verbosely.
<host>::
@ -99,4 +101,4 @@ Documentation by Junio C Hamano.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -53,4 +53,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -113,7 +113,7 @@ OPTIONS
stdin. The commit id is expected on stdout.
+
As a special extension, the commit filter may emit multiple
commit ids; in that case, ancestors of the original commit will
commit ids; in that case, the rewritten children of the original commit will
have all of them as parents.
+
You can use the 'map' convenience function in this filter, and other
@ -161,7 +161,8 @@ to other tags will be rewritten to point to the underlying commit.
does this in the '.git-rewrite/' directory but you can override
that choice by this parameter.
-f|--force::
-f::
--force::
`git filter-branch` refuses to start with an existing temporary
directory or when there are already refs starting with
'refs/original/', unless forced.
@ -317,4 +318,4 @@ Documentation by Petr Baudis and the git list.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -33,11 +33,13 @@ OPTIONS
Do not list one-line descriptions from the actual commits being
merged.
--summary,--no-summary::
--summary::
--no-summary::
Synonyms to --log and --no-log; these are deprecated and will be
removed in the future.
--file <file>, -F <file>::
-F <file>::
--file <file>::
Take the list of merged objects from <file> instead of
stdin.
@ -67,4 +69,4 @@ Documentation by Petr Baudis, Junio C Hamano and the git-list <git@vger.kernel.o
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -8,9 +8,8 @@ git-for-each-ref - Output information on each ref
SYNOPSIS
--------
[verse]
'git-for-each-ref' [--count=<count>]\*
[--shell|--perl|--python|--tcl]
[--sort=<key>]\* [--format=<format>] [<pattern>]
'git-for-each-ref' [--count=<count>] [--shell|--perl|--python|--tcl]
[--sort=<key>]\* [--format=<format>] [<pattern>...]
DESCRIPTION
-----------
@ -32,8 +31,9 @@ OPTIONS
<key>::
A field name to sort on. Prefix `-` to sort in
descending order of the value. When unspecified,
`refname` is used. More than one sort keys can be
given.
`refname` is used. You may use the --sort=<key> option
multiple times, in which case the last key becomes the primary
key.
<format>::
A string that interpolates `%(fieldname)` from the
@ -48,11 +48,15 @@ OPTIONS
`%09` to `\t` (TAB) and `%0a` to `\n` (LF).
<pattern>::
If given, the name of the ref is matched against this
using fnmatch(3). Refs that do not match the pattern
are not shown.
If one or more patterns are given, only refs are shown that
match againt at least one pattern, either using fnmatch(3) or
literally, in the latter case matching completely or from the
beginning up to a slash.
--shell, --perl, --python, --tcl::
--shell::
--perl::
--python::
--tcl::
If given, strings that substitute `%(fieldname)`
placeholders are quoted as string literals suitable for
the specified host language. This is meant to produce

View File

@ -74,14 +74,17 @@ include::diff-options.txt[]
-<n>::
Limits the number of patches to prepare.
-o|--output-directory <dir>::
-o <dir>::
--output-directory <dir>::
Use <dir> to store the resulting files, instead of the
current working directory.
-n|--numbered::
-n::
--numbered::
Name output in '[PATCH n/m]' format.
-N|--no-numbered::
-N::
--no-numbered::
Name output in '[PATCH]' format.
--start-number <n>::
@ -92,11 +95,13 @@ include::diff-options.txt[]
without the default first line of the commit appended.
Mutually exclusive with the --stdout option.
-k|--keep-subject::
-k::
--keep-subject::
Do not strip/add '[PATCH]' from the first line of the
commit log message.
-s|--signoff::
-s::
--signoff::
Add `Signed-off-by:` line to the commit message, using
the committer identity of yourself.
@ -223,7 +228,7 @@ as e-mailable patches:
$ git format-patch -3
------------
See Also
SEE ALSO
--------
linkgit:git-am[1], linkgit:git-send-email[1]
@ -238,4 +243,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -151,4 +151,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -119,7 +119,7 @@ If you are expecting some objects to be collected and they aren't, check
all of those locations and decide whether it makes sense in your case to
remove those references.
See Also
SEE ALSO
--------
linkgit:git-prune[1]
linkgit:git-reflog[1]
@ -132,4 +132,4 @@ Written by Shawn O. Pearce <spearce@spearce.org>
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -33,4 +33,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -33,25 +33,30 @@ OPTIONS
Instead of searching in the working tree files, check
the blobs registered in the index file.
-a | --text::
-a::
--text::
Process binary files as if they were text.
-i | --ignore-case::
-i::
--ignore-case::
Ignore case differences between the patterns and the
files.
-I::
Don't match the pattern in binary files.
-w | --word-regexp::
-w::
--word-regexp::
Match the pattern only at word boundary (either begin at the
beginning of a line, or preceded by a non-word character; end at
the end of a line or followed by a non-word character).
-v | --invert-match::
-v::
--invert-match::
Select non-matching lines.
-h | -H::
-h::
-H::
By default, the command shows the filename for each
match. `-h` option is used to suppress this output.
`-H` is there for completeness and does not do anything
@ -64,24 +69,33 @@ OPTIONS
option forces paths to be output relative to the project
top directory.
-E | --extended-regexp | -G | --basic-regexp::
-E::
--extended-regexp::
-G::
--basic-regexp::
Use POSIX extended/basic regexp for patterns. Default
is to use basic regexp.
-F | --fixed-strings::
-F::
--fixed-strings::
Use fixed strings for patterns (don't interpret pattern
as a regex).
-n::
Prefix the line number to matching lines.
-l | --files-with-matches | --name-only | -L | --files-without-match::
-l::
--files-with-matches::
--name-only::
-L::
--files-without-match::
Instead of showing every matched line, show only the
names of files that contain (or do not contain) matches.
For better compatibility with git-diff, --name-only is a
synonym for --files-with-matches.
-c | --count::
-c::
--count::
Instead of showing every matched line, show the number of
lines that match.
@ -103,7 +117,10 @@ OPTIONS
scripts passing user input to grep. Multiple patterns are
combined by 'or'.
--and | --or | --not | ( | )::
--and::
--or::
--not::
( ... )::
Specify how multiple patterns are combined using Boolean
expressions. `--or` is the default operator. `--and` has
higher precedence than `--or`. `-e` has to be used for all
@ -145,4 +162,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -79,9 +79,9 @@ git gui browser maint::
selected in the browser can be viewed with the internal
blame viewer.
See Also
SEE ALSO
--------
'gitk(1)'::
linkgit:gitk[1]::
The git repository browser. Shows branches, commit history
and file differences. gitk is the utility started by
git-gui's Repository Visualize actions.
@ -112,4 +112,4 @@ Documentation by Shawn O. Pearce <spearce@spearce.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -45,4 +45,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -28,15 +28,18 @@ former is internally converted into the latter.
OPTIONS
-------
-a|--all::
-a::
--all::
Prints all the available commands on the standard output. This
option supersedes any other option.
-i|--info::
-i::
--info::
Display manual page for the command in the 'info' format. The
'info' program will be used for that purpose.
-m|--man::
-m::
--man::
Display manual page for the command in the 'man' format. This
option may be used to override a value set in the
'help.format' configuration variable.
@ -45,7 +48,8 @@ By default the 'man' program will be used to display the manual page,
but the 'man.viewer' configuration variable may be used to choose
other display programs (see below).
-w|--web::
-w::
--web::
Display manual page for the command in the 'web' (HTML)
format. A web browser will be used for that purpose.
+
@ -172,10 +176,10 @@ Written by Junio C Hamano <gitster@pobox.com> and the git-list
Documentation
-------------
Initial documentation was part of the linkgit:git[7] man page.
Initial documentation was part of the linkgit:git[1] man page.
Christian Couder <chriscool@tuxfamily.org> extracted and rewrote it a
little. Maintenance is done by the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -53,4 +53,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -15,8 +15,8 @@ DESCRIPTION
Sends missing objects to remote repository, and updates the
remote branch.
*NOTE*: This command is temporarily disabled if your cURL
library is older than 7.16, as the combination has been reported
*NOTE*: This command is temporarily disabled if your libcurl
is older than 7.16, as the combination has been reported
not to work and sometimes corrupts repository.
OPTIONS
@ -40,7 +40,8 @@ OPTIONS
Report the list of objects being walked locally and the
list of objects successfully sent to the remote repository.
-d, -D::
-d::
-D::
Remove <ref> from remote repository. The specified branch
cannot be the remote HEAD. If -d is specified the following
other conditions must also be met:
@ -101,4 +102,4 @@ Documentation by Nick Hengeveld
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -59,4 +59,4 @@ Documentation by Mike McCormack
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -100,4 +100,4 @@ Documentation by Sergey Vlasov
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -8,7 +8,7 @@ git-init - Create an empty git repository or reinitialize an existing one
SYNOPSIS
--------
'git-init' [-q | --quiet] [--template=<template_directory>] [--shared[=<permissions>]]
'git-init' [-q | --quiet] [--bare] [--template=<template_directory>] [--shared[=<permissions>]]
OPTIONS
@ -16,10 +16,16 @@ OPTIONS
--
-q, \--quiet::
-q::
--quiet::
Only print error and warning messages, all other output will be suppressed.
--bare::
Create a bare repository. If GIT_DIR environment is not set, it is set to the
current working directory.
--template=<template_directory>::
Provide the directory from which templates will be used. The default template
@ -117,4 +123,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -20,24 +20,29 @@ repository.
OPTIONS
-------
-l|--local::
-l::
--local::
Only bind the web server to the local IP (127.0.0.1).
-d|--httpd::
-d::
--httpd::
The HTTP daemon command-line that will be executed.
Command-line options may be specified here, and the
configuration file will be added at the end of the command-line.
Currently lighttpd, apache2 and webrick are supported.
(Default: lighttpd)
-m|--module-path::
-m::
--module-path::
The module path (only needed if httpd is Apache).
(Default: /usr/lib/apache2/modules)
-p|--port::
-p::
--port::
The port number to bind the httpd to. (Default: 1234)
-b|--browser::
-b::
--browser::
The web browser that should be used to view the gitweb
page. This will be passed to the 'git-web--browse' helper
script along with the URL of the gitweb instance. See
@ -86,4 +91,4 @@ Documentation by Eric Wong <normalperson@yhbt.net>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -112,4 +112,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -78,4 +78,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -30,23 +30,29 @@ shown:
OPTIONS
-------
-c|--cached::
-c::
--cached::
Show cached files in the output (default)
-d|--deleted::
-d::
--deleted::
Show deleted files in the output
-m|--modified::
-m::
--modified::
Show modified files in the output
-o|--others::
-o::
--others::
Show other files in the output
-i|--ignored::
-i::
--ignored::
Show ignored files in the output.
Note that this also reverses any exclude list present.
-s|--stage::
-s::
--stage::
Show stage files in the output
--directory::
@ -56,10 +62,12 @@ OPTIONS
--no-empty-directory::
Do not list empty directories. Has no effect without --directory.
-u|--unmerged::
-u::
--unmerged::
Show unmerged files in the output (forces --stage)
-k|--killed::
-k::
--killed::
Show files on the filesystem that need to be removed due
to file/directory conflicts for checkout-index to
succeed.
@ -67,11 +75,13 @@ OPTIONS
-z::
\0 line termination on output.
-x|--exclude=<pattern>::
-x <pattern>::
--exclude=<pattern>::
Skips files matching pattern.
Note that pattern is a shell wildcard pattern.
-X|--exclude-from=<file>::
-X <file>::
--exclude-from=<file>::
exclude patterns are read from <file>; 1 per line.
--exclude-per-directory=<file>::
@ -177,7 +187,7 @@ top of the directory tree. A pattern read from a file specified
by --exclude-per-directory is relative to the directory that the
pattern file appears in.
See Also
SEE ALSO
--------
linkgit:git-read-tree[1], linkgit:gitignore[5]
@ -192,4 +202,4 @@ Documentation by David Greaves, Junio C Hamano, Josh Triplett, and the git-list
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -20,13 +20,17 @@ commit IDs.
OPTIONS
-------
-h|--heads, -t|--tags::
-h::
--heads::
-t::
--tags::
Limit to only refs/heads and refs/tags, respectively.
These options are _not_ mutually exclusive; when given
both, references stored in refs/heads and refs/tags are
displayed.
-u <exec>, --upload-pack=<exec>::
-u <exec>::
--upload-pack=<exec>::
Specify the full path of linkgit:git-upload-pack[1] on the remote
host. This allows listing references from repositories accessed via
SSH and where the SSH daemon does not use the PATH configured by the
@ -69,4 +73,4 @@ Written by Junio C Hamano <junkio@cox.net>
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -91,4 +91,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -66,4 +66,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -27,7 +27,7 @@ OPTIONS
Root of the Maildir to split. This directory should contain the cur, tmp
and new subdirectories.
<directory>::
-o<directory>::
Directory in which to place the individual messages.
-b::
@ -55,4 +55,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -39,4 +39,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -89,4 +89,4 @@ with parts copied from the original documentation of RCS merge.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -84,4 +84,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -26,4 +26,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -33,4 +33,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -168,4 +168,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -70,4 +70,4 @@ Documentation by Theodore Y Ts'o.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -43,4 +43,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -31,4 +31,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -34,7 +34,8 @@ OPTIONS
condition. An error happens when a source is neither existing nor
controlled by GIT, or when it would overwrite an existing
file unless '-f' is given.
-n, \--dry-run::
-n::
--dry-run::
Do nothing; only show what would happen
@ -50,4 +51,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -41,6 +41,13 @@ OPTIONS
of linkgit:git-describe[1] more closely. This option
cannot be combined with --stdin.
--no-undefined::
Die with error code != 0 when a reference is undefined,
instead of printing `undefined`.
--always::
Show uniquely abbreviated commit object as fallback.
EXAMPLE
-------
@ -75,4 +82,4 @@ Documentation by Johannes Schindelin.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -79,7 +79,8 @@ base-name::
reference was included in the resulting packfile. This
can be useful to send new tags to native git clients.
--window=[N], --depth=[N]::
--window=[N]::
--depth=[N]::
These two options affect how the objects contained in
the pack are stored using delta compression. The
objects are first internally sorted by type, size and
@ -200,7 +201,7 @@ Documentation
-------------
Documentation by Junio C Hamano
See Also
SEE ALSO
--------
linkgit:git-rev-list[1]
linkgit:git-repack[1]
@ -208,4 +209,4 @@ linkgit:git-prune-packed[1]
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -46,7 +46,7 @@ Documentation
--------------
Documentation by Lukas Sandström <lukass@etek.chalmers.se>
See Also
SEE ALSO
--------
linkgit:git-pack-objects[1]
linkgit:git-repack[1]
@ -54,4 +54,4 @@ linkgit:git-prune-packed[1]
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -42,7 +42,7 @@ unpacked.
OPTIONS
-------
\--all::
--all::
The command by default packs all tags and refs that are already
packed, and leaves other refs
@ -51,7 +51,7 @@ developed and packing their tips does not help performance.
This option causes branch tips to be packed as well. Useful for
a repository with many branches of historical interests.
\--no-prune::
--no-prune::
The command usually removes loose refs under `$GIT_DIR/refs`
hierarchy after packing them. This option tells it not to.
@ -63,4 +63,4 @@ Written by Linus Torvalds <torvalds@osdl.org>
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -47,4 +47,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -39,4 +39,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -16,7 +16,7 @@ This command is deprecated; use `git-ls-remote` instead.
OPTIONS
-------
\--upload-pack=<git-upload-pack>::
--upload-pack=<git-upload-pack>::
Use this to specify the path to 'git-upload-pack' on the
remote side, if it is not found on your $PATH. Some
installations of sshd ignores the user's environment
@ -47,4 +47,4 @@ Documentation by Junio C Hamano.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -42,11 +42,11 @@ Documentation
--------------
Documentation by Ryan Anderson <ryan@michonline.com>
See Also
SEE ALSO
--------
linkgit:git-pack-objects[1]
linkgit:git-repack[1]
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -37,7 +37,7 @@ OPTIONS
\--::
Do not interpret any more arguments as options.
\--expire <time>::
--expire <time>::
Only expire loose objects older than <time>.
<head>...::
@ -66,7 +66,7 @@ many other housekeeping tasks.
For a description of which objects are considered for pruning, see
git-fsck's --unreachable option.
See Also
SEE ALSO
--------
linkgit:git-fsck[1],
@ -83,4 +83,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -30,7 +30,7 @@ include::merge-options.txt[]
:git-pull: 1
\--rebase::
--rebase::
Instead of a merge, perform a rebase after fetching. If
there is a remote ref for the upstream branch, and this branch
was rebased since last fetched, the rebase uses that information
@ -38,13 +38,14 @@ include::merge-options.txt[]
for branch `<name>`, set configuration `branch.<name>.rebase`
to `true`.
+
*NOTE:* This is a potentially _dangerous_ mode of operation.
[NOTE]
This is a potentially _dangerous_ mode of operation.
It rewrites history, which does not bode well when you
published that history already. Do *not* use this option
unless you have read linkgit:git-rebase[1] carefully.
\--no-rebase::
Override earlier \--rebase.
--no-rebase::
Override earlier --rebase.
include::fetch-options.txt[]
@ -203,4 +204,4 @@ Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -61,11 +61,11 @@ already exists on the remote side. This is the default operation mode
if no explicit refspec is found (that is neither on the command line
nor in any Push line of the corresponding remotes file---see below).
\--all::
--all::
Instead of naming each ref to push, specifies that all
refs under `$GIT_DIR/refs/heads/` be pushed.
\--mirror::
--mirror::
Instead of naming each ref to push, specifies that all
refs under `$GIT_DIR/refs/heads/` and `$GIT_DIR/refs/tags/`
be mirrored to the remote repository. Newly created local
@ -75,39 +75,42 @@ nor in any Push line of the corresponding remotes file---see below).
if the configuration option `remote.<remote>.mirror` is
set.
\--dry-run::
--dry-run::
Do everything except actually send the updates.
\--tags::
--tags::
All refs under `$GIT_DIR/refs/tags` are pushed, in
addition to refspecs explicitly listed on the command
line.
\--receive-pack=<git-receive-pack>::
--receive-pack=<git-receive-pack>::
Path to the 'git-receive-pack' program on the remote
end. Sometimes useful when pushing to a remote
repository over ssh, and you do not have the program in
a directory on the default $PATH.
\--exec=<git-receive-pack>::
--exec=<git-receive-pack>::
Same as \--receive-pack=<git-receive-pack>.
-f, \--force::
-f::
--force::
Usually, the command refuses to update a remote ref that is
not an ancestor of the local ref used to overwrite it.
This flag disables the check. This can cause the
remote repository to lose commits; use it with care.
\--repo=<repo>::
--repo=<repo>::
When no repository is specified the command defaults to
"origin"; this overrides it.
\--thin, \--no-thin::
--thin::
--no-thin::
These options are passed to `git-send-pack`. Thin
transfer spends extra cycles to minimize the number of
objects to be sent and meant to be used on slower connection.
-v, \--verbose::
-v::
--verbose::
Run verbosely.
include::urls-remotes.txt[]
@ -200,4 +203,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -29,6 +29,8 @@ preserved as the 1 line subject in the git description.
OPTIONS
-------
-n::
--dry-run::
Walk through the patches in the series and warn
if we cannot find all of the necessary information to commit
@ -57,4 +59,4 @@ Documentation by Eric Biederman <ebiederm@lnxi.com>
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -50,6 +50,9 @@ OPTIONS
trees that are not directly related to the current
working tree status into a temporary index file.
-v::
Show the progress of checking files out.
--trivial::
Restrict three-way merge by `git-read-tree` to happen
only if there is no file-level merging required, instead
@ -345,7 +348,7 @@ middle of doing, and when your working tree is ready (i.e. you
have finished your work-in-progress), attempt the merge again.
See Also
SEE ALSO
--------
linkgit:git-write-tree[1]; linkgit:git-ls-files[1];
linkgit:gitignore[5]
@ -361,4 +364,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -213,19 +213,22 @@ OPTIONS
--skip::
Restart the rebasing process by skipping the current patch.
-m, \--merge::
-m::
--merge::
Use merging strategies to rebase. When the recursive (default) merge
strategy is used, this allows rebase to be aware of renames on the
upstream side.
-s <strategy>, \--strategy=<strategy>::
-s <strategy>::
--strategy=<strategy>::
Use the given merge strategy; can be supplied more than
once to specify them in the order they should be tried.
If there is no `-s` option, a built-in list of strategies
is used instead (`git-merge-recursive` when merging a single
head, `git-merge-octopus` otherwise). This implies --merge.
-v, \--verbose::
-v::
--verbose::
Display a diffstat of what changed upstream since the last rebase.
-C<n>::
@ -238,12 +241,14 @@ OPTIONS
This flag is passed to the `git-apply` program
(see linkgit:git-apply[1]) that applies the patch.
-i, \--interactive::
-i::
--interactive::
Make a list of the commits which are about to be rebased. Let the
user edit that list before rebasing. This mode can also be used to
split commits (see SPLITTING COMMITS below).
-p, \--preserve-merges::
-p::
--preserve-merges::
Instead of ignoring merges, try to recreate them. This option
only works in interactive mode.
@ -401,4 +406,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -162,4 +162,4 @@ Documentation by Junio C Hamano.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -102,4 +102,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -34,4 +34,4 @@ Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

View File

@ -9,11 +9,11 @@ git-remote - manage set of tracked repositories
SYNOPSIS
--------
[verse]
'git-remote'
'git-remote' [-v | --verbose]
'git-remote' add [-t <branch>] [-m <master>] [-f] [--mirror] <name> <url>
'git-remote' rm <name>
'git-remote' show <name>
'git-remote' prune <name>
'git-remote' show [-n] <name>
'git-remote' prune [-n | --dry-run] <name>
'git-remote' update [group]
DESCRIPTION
@ -22,6 +22,14 @@ DESCRIPTION
Manage the set of repositories ("remotes") whose branches you track.
OPTIONS
-------
-v::
--verbose::
Be a little more verbose and show remote url after name.
COMMANDS
--------
@ -72,9 +80,8 @@ These stale branches have already been removed from the remote repository
referenced by <name>, but are still locally available in
"remotes/<name>".
+
With `-n` option, the remote heads are not confirmed first with `git
ls-remote <name>`; cached information is used instead. Use with
caution.
With `--dry-run` option, report what branches will be pruned, but do no
actually prune them.
'update'::
@ -128,7 +135,7 @@ $ git merge origin
------------
See Also
SEE ALSO
--------
linkgit:git-fetch[1]
linkgit:git-branch[1]
@ -146,4 +153,4 @@ Documentation by J. Bruce Fields and the git-list <git@vger.kernel.org>.
GIT
---
Part of the linkgit:git[7] suite
Part of the linkgit:git[1] suite

Some files were not shown because too many files have changed in this diff Show More