<p>Let's say I've got a setup that look something like</p>

<pre><code>phd/code/
phd/figures/
phd/thesis/
</code></pre>

<p>For historical reasons, these all have their own git repositories. But I'd like to combine them into a single one to simplify things a little. For example, right now I might make two sets of changes and have to do something like</p>

<pre><code>cd phd/code
git commit 
cd ../figures
git commit
</code></pre>

<p>It'd be (now) nice to just to perform</p>

<pre><code>cd phd
git commit
</code></pre>

<p>There seems to be a couple of ways of doing this using submodules or pulling from my sub-repositories, but that's a little more complex than I'm looking for. At the very least, I'd be happy with</p>

<pre><code>cd phd
git init
git add [[everything that's already in my other repositories]]
</code></pre>

<p>but that doesn't seem like a one-liner. Is there anything in <code>git</code> that can help me out?</p>

The sequence you suggested
```
```
git init
git add *
git commit -a -m "import everything"
```
```
will work, but you will lose your commit history.