threads / discuss / 42620

Easiest way to clone over an existing directory?

Subject: Easiest way to clone over an existing directory?

## tl;dr

2 messages between Jun 16, 2016 and Jun 16, 2016.

replies: 1people: 2as markdown or json

Josh Triplett· Jun 15, 2016, 15:51 UTC · lore
Currently, every time I set up a new system, I run the following:

git clone $MY_HOMEDIR mv home/.git . rm -r home git checkout -f

This seems like an odd dance to go through. But I can't just git clone into ~ directly, because git clone will not clone into an existing non-empty directory.

(I could use "git clone -n" to avoid the unnecessary checkout, but the files are small, and it wouldn't remove the need to rmdir so the number of commands would remain the same.)

Does some better way exist to handle this? And if not, would it make sense for git clone to have an option to clone into an existing directory (which should also avoid setting junk_work_tree)?

brian m. carlson· Jun 16, 2016, 02:44 UTC · re: Josh Triplett · lore

Re: Easiest way to clone over an existing directory?

On Wed, Jun 15, 2016 at 08:51:34AM -0700, Josh Triplett wrote:
Show 18 quoted lines
> Currently, every time I set up a new system, I run the following:
> 
> git clone $MY_HOMEDIR
> mv home/.git .
> rm -r home
> git checkout -f
> 
> This seems like an odd dance to go through.  But I can't just git clone
> into ~ directly, because git clone will not clone into an existing
> non-empty directory.
> 
> (I could use "git clone -n" to avoid the unnecessary checkout, but the
> files are small, and it wouldn't remove the need to rmdir so the number
> of commands would remain the same.)
> 
> Does some better way exist to handle this?  And if not, would it make
> sense for git clone to have an option to clone into an existing
> directory (which should also avoid setting junk_work_tree)?
My typical technique is something like the following:
  git init
  git remote add origin https://git.crustytoothpaste.net/git/bmc/homedir.git
  git pull origin master

I'm not sure if that's the officially sanctioned way to do it, but it does work reliably.

-- 
brian m. carlson / brian with sandals: Houston, Texas, US
+1 832 623 2791 | https://www.crustytoothpaste.net/~bmc | My opinion only
OpenPGP: https://keybase.io/bk2204

← back to recent threads