git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* git commit error on initial (the very first) commit
@ 2006-01-29 17:26 Andrey Borzenkov
  2006-01-29 18:16 ` J. Bruce Fields
  2006-01-29 21:05 ` Junio C Hamano
  0 siblings, 2 replies; 5+ messages in thread
From: Andrey Borzenkov @ 2006-01-29 17:26 UTC (permalink / raw)
  To: git

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

May be I do something wrong? What is correct procedure to initially import 
tree? git 1.1.4

{pts/0}% git init-db
defaulting to local storage area
{pts/0}% git add .
{pts/0}% git commit -m 'initial import'
usage: git-diff-index [-m] [--cached] [<common diff options>] <tree-ish> 
[<path>...]
common diff options:
... etc

Committing initial tree 4c9bc57b6911db86c7ab482cca33948a9ba20ef0

- -andrey
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFD3PreR6LMutpd94wRAiP1AJwI93tNjyQ3PYjuwh/EP/GQJHhjKQCeNsuq
6oWKT+2XHaU3Qe50hkmkQ+g=
=493D
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: git commit error on initial (the very first) commit
  2006-01-29 17:26 git commit error on initial (the very first) commit Andrey Borzenkov
@ 2006-01-29 18:16 ` J. Bruce Fields
  2006-01-29 21:08   ` Junio C Hamano
  2006-01-29 21:05 ` Junio C Hamano
  1 sibling, 1 reply; 5+ messages in thread
From: J. Bruce Fields @ 2006-01-29 18:16 UTC (permalink / raw)
  To: Andrey Borzenkov; +Cc: git

On Sun, Jan 29, 2006 at 08:26:54PM +0300, Andrey Borzenkov wrote:
> May be I do something wrong? What is correct procedure to initially import 
> tree? git 1.1.4
> 
> {pts/0}% git init-db
> defaulting to local storage area
> {pts/0}% git add .
> {pts/0}% git commit -m 'initial import'

It needs to know which paths to update.  Probably you want to include
all the files you added with the "git add", and you can do that just
with -a:

	git commit -a -m "initial import"

should do the job.  The default commit command for me is usually just
git commit -a.

--b.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: git commit error on initial (the very first) commit
  2006-01-29 17:26 git commit error on initial (the very first) commit Andrey Borzenkov
  2006-01-29 18:16 ` J. Bruce Fields
@ 2006-01-29 21:05 ` Junio C Hamano
  1 sibling, 0 replies; 5+ messages in thread
From: Junio C Hamano @ 2006-01-29 21:05 UTC (permalink / raw)
  To: Andrey Borzenkov; +Cc: git

Andrey Borzenkov <arvidjaar@mail.ru> writes:

> May be I do something wrong? What is correct procedure to initially import 
> tree? git 1.1.4
>
> {pts/0}% git init-db
> defaulting to local storage area
> {pts/0}% git add .
> {pts/0}% git commit -m 'initial import'
> usage: git-diff-index [-m] [--cached] [<common diff options>] <tree-ish> 
> [<path>...]
> common diff options:
> ... etc

I suspect you have $(template_dir)/hooks/pre-commit enabled.

-- >8 --
[PATCH] pre-commit sample hook: do not barf on the initial import

The example hook barfs on the initial import.  Ideally it should
produce a diff from an empty tree, but for now let's stop at
squelching the bogus error message.  Often an initial import
involves tons of badly formatted files from foreign SCM, so not
complaining about them like this patch does might actually be a
better idea than enforcing the "Perfect Patch" format on them.

Signed-off-by: Junio C Hamano <junkio@cox.net>
---
diff --git a/templates/hooks--pre-commit b/templates/hooks--pre-commit
index 4bb6803..6b3a21b 100644
--- a/templates/hooks--pre-commit
+++ b/templates/hooks--pre-commit
@@ -10,8 +10,16 @@
 # This is slightly modified from Andrew Morton's Perfect Patch.
 # Lines you introduce should not have trailing whitespace.
 # Also check for an indentation that has SP before a TAB.
+
+if git-rev-parse --verify HEAD 2>/dev/null
+then
+	git-diff-index -p -M --cached HEAD
+else
+	# NEEDSWORK: we should produce a diff with an empty tree here
+	# if we want to do the same verification for the initial import.
+	:
+fi |		
 perl -e '
-    my $fh;
     my $found_bad = 0;
     my $filename;
     my $reported_filename = "";
@@ -31,8 +39,7 @@ perl -e '
 	print STDERR "* $why (line $lineno)\n";
 	print STDERR "$filename:$lineno:$line\n";
     }
-    open $fh, "-|", qw(git-diff-index -p -M --cached HEAD);
-    while (<$fh>) {
+    while (<>) {
 	if (m|^diff --git a/(.*) b/\1$|) {
 	    $filename = $1;
 	    next;

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: git commit error on initial (the very first) commit
  2006-01-29 18:16 ` J. Bruce Fields
@ 2006-01-29 21:08   ` Junio C Hamano
  2006-01-29 21:51     ` J. Bruce Fields
  0 siblings, 1 reply; 5+ messages in thread
From: Junio C Hamano @ 2006-01-29 21:08 UTC (permalink / raw)
  To: J. Bruce Fields; +Cc: Andrey Borzenkov, git

"J. Bruce Fields" <bfields@fieldses.org> writes:

> On Sun, Jan 29, 2006 at 08:26:54PM +0300, Andrey Borzenkov wrote:
>> May be I do something wrong? What is correct procedure to initially import 
>> tree? git 1.1.4
>> 
>> {pts/0}% git init-db
>> defaulting to local storage area
>> {pts/0}% git add .
>> {pts/0}% git commit -m 'initial import'
>
> It needs to know which paths to update.

While I agree with you that individual developers should always
say "commit -a" after testing their changes, I do not think that
has much to do with Andrey's problem.

In a freshly created repository, "git add ." would register
everything to the index file, and a "git commit" with or without
"-a" that immediately follows "git add ." would commit what is
in the index.  Use of "-a" would not make a difference here.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: git commit error on initial (the very first) commit
  2006-01-29 21:08   ` Junio C Hamano
@ 2006-01-29 21:51     ` J. Bruce Fields
  0 siblings, 0 replies; 5+ messages in thread
From: J. Bruce Fields @ 2006-01-29 21:51 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Andrey Borzenkov, git

On Sun, Jan 29, 2006 at 01:08:58PM -0800, Junio C Hamano wrote:
> In a freshly created repository, "git add ." would register
> everything to the index file, and a "git commit" with or without
> "-a" that immediately follows "git add ." would commit what is
> in the index.  Use of "-a" would not make a difference here.

Aie, you're right of course, thanks.--b.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2006-01-29 21:52 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-01-29 17:26 git commit error on initial (the very first) commit Andrey Borzenkov
2006-01-29 18:16 ` J. Bruce Fields
2006-01-29 21:08   ` Junio C Hamano
2006-01-29 21:51     ` J. Bruce Fields
2006-01-29 21:05 ` Junio C Hamano

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).