# Difference between git-clone --bare and git-push --all to empty repo

1 messages from 2008-06-13 to 2008-06-13. Participants: Pedro Melo.
Thread: https://gitlist.dev/t/13929

## Pedro Melo, 2008-06-13 11:23

Subject: Difference between git-clone --bare and git-push --all to empty repo
Message-ID: <7D042A31-9CC8-4740-8185-7165AEF6E0DF@simplicidade.org>
URL: https://gitlist.dev/e/7D042A31-9CC8-4740-8185-7165AEF6E0DF%40simplicidade.org

```
Hi,

I have a private repository on my laptop and for backup purposes  
only, I created a remote repository to push to.

I created the remote repo in two ways:

1. git-clone --bare

I used git-clone --bare to create a bare repository with a copy of my  
work and rsync'ed that to the remote server

2. git init a bare repo and git push --all

I created a empty bare repository with

    mkdir project_backup
    GIT_DIR=project_backup git init

and then pushed my work to it:

   cd project
   git push --all ../project_backup

and rsync'ed the project_backup directory.

I see the same number of objects and the same branches on both bare  
repositories, but the first one created with git-clone uses a lot  
more space, even after git-repack -d -a on both.

I'm still learning the internals of git, but I could not find any  
explanation for this. Care to enlighten me?

Thanks in advance,
-- 
Pedro Melo
Blog: http://www.simplicidade.org/notes/
XMPP ID: melo@simplicidade.org
Use XMPP!

```
